Technocide Wiki technocide_en https://technocide.wiki.gg/ MediaWiki 1.43.1 first-letter Media Special Talk User User talk Meta Meta talk File File talk MediaWiki MediaWiki talk Template Template talk Help Help talk Category Category talk Module Module talk Meta:Copyrights 4 1 1 2025-03-25T22:47:28Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <!--''[[GAME]]'' content and materials are the intellectual property of their respective owners. -->Content that you make available on {{SITENAME}} is licensed by you to us under our [{{int:wikigg-tos-url}} Terms of Service]. Do not make content available on {{SITENAME}} where you do not have the necessary rights to grant this license. All textual and graphical content on {{SITENAME}} that we may lawfully license is licensed to you under the [https://creativecommons.org/licenses/by-sa/4.0 Creative Commons Attribution-ShareAlike 4.0] license. [[Category:Legal notices]] a5c705cf276359aef94d426ee75d18bbf1e361ac 2 1 2025-03-25T22:47:29Z Mr Pie 5 2833 Protected "[[Meta:Copyrights]]" ([Edit=Allow only administrators] (indefinite)) wikitext text/x-wiki <!--''[[GAME]]'' content and materials are the intellectual property of their respective owners. -->Content that you make available on {{SITENAME}} is licensed by you to us under our [{{int:wikigg-tos-url}} Terms of Service]. Do not make content available on {{SITENAME}} where you do not have the necessary rights to grant this license. All textual and graphical content on {{SITENAME}} that we may lawfully license is licensed to you under the [https://creativecommons.org/licenses/by-sa/4.0 Creative Commons Attribution-ShareAlike 4.0] license. [[Category:Legal notices]] a5c705cf276359aef94d426ee75d18bbf1e361ac MediaWiki:Apioutput.css 8 2 3 2025-03-25T22:47:31Z Mr Pie 5 2833 Adding default set of pages css text/css /* All CSS here is applied on api.php pages */ @media (prefers-color-scheme: dark) { body { background-color:#20211f; border-color: #7b7261; color: #f6ecdb; } h1, h2, h3, h4, h5, h6 { color: rgb(234, 224, 207); border-color: rgb(83, 84, 81); } .mw-highlight .s2 { color: rgb(206, 99, 91); } a { color: rgb(133, 180, 221); } a:visited { color: rgb(141, 127, 218); } pre, code, .mw-code { background-color: rgb(34, 35, 33); color: rgb(234, 224, 207); border-color: rgb(63, 64, 62); } } c95cf2c22c12d821f22b745f2aa78d4f6f711500 MediaWiki:Common.css 8 3 4 2025-03-25T22:47:32Z Mr Pie 5 2833 Adding default set of pages css text/css /* CSS placed here will be applied to all skins */ :root{ /* start font settings */ --wiki-body-font-family: sans-serif; --wiki-heading-font-family: 'Linux Libertine','Georgia','Times',serif; --wiki-sidebar-heading-font-family: sans-serif; /* end font settings */ /* start design variables */ --wiki-sidebar-border-radius:0px; /* these two variables must have units specified even if 0, ignore the warning */ --wiki-sidebar-portal-spacing:0px; --wiki-content-border-width:1px; --wiki-sidebar-border-width:1px; /* end design variables */ } /* the rest of the variables will modify some type of color, either text color, background color, border color, etc. */ :root, /* Begin light styles, delete from here to "end light styles" if you don't want your wiki to support any light themes (remove from [[Mediawiki:Theme-definitions]] too, or ask wiki.gg staff for help doing this) */ /* FYI: .view- will affect any theme marked |kind=light, */ /* individual themes are prefixed with .theme- instead */ .view-light { /********************** * Probably edit these * [ LIGHT VIEW ] ***********************/ --wiki-body-background-color: #F6F6F6; --wiki-body-background-image: url(/images/8/80/Site-background.jpg); /* please find the file path by viewing the image directly (click the image from the File: page) */ --wiki-content-background-color: #ffffff; --wiki-content-background-opacity: 100%; --wiki-content-border-color: #a7d7f9; --wiki-content-link-color: #0645ad; /* if changing this, remember to change --wiki-icon-to-link-filter as well!!! */ /* [ LIGHT VIEW ] */ --wiki-accent-color: #3366cc; --wiki-accent-label-color: #ffffff; --wiki-accent-link-color: #D5FB51; --wiki-icon-to-link-filter: invert(20%) sepia(93%) saturate(2141%) hue-rotate(210deg) brightness(83%) contrast(103%); /* put your --wiki-content-link-color into https://mrpie5.gitlab.io/css-filter-generator/ */ /**/ /******************* * Maybe edit these * [ LIGHT VIEW ] ********************/ --wiki-body-background-position: top center; --wiki-body-background-size:cover; --wiki-body-background-repeat: no-repeat; --wiki-body-background-attachment: fixed; --wiki-content-background-color--secondary: color-mix(in srgb, var(--wiki-content-background-color) 96%, var(--wiki-content-dynamic-color)); --wiki-content-text-color: #111111; --wiki-content-link-color--visited: var(--wiki-content-link-color); --wiki-content-link-color--hover: var(--wiki-content-link-color); --wiki-content-redlink-color: #ba0000; --wiki-content-heading-color: var(--wiki-content-text-color); --wiki-accent-color--hover: color-mix(in srgb, var(--wiki-accent-color) 95%, var(--wiki-accent-label-color)); /* [ LIGHT VIEW ] */ --wiki-sidebar-background-color: var(--wiki-content-background-color); --wiki-sidebar-background-opacity: var(--wiki-content-background-opacity); --wiki-sidebar-border-color: var(--wiki-content-border-color); --wiki-sidebar-link-color: var(--wiki-content-link-color); --wiki-sidebar-link-color--hover: var(--wiki-content-link-color--hover); --wiki-sidebar-heading-color: var(--wiki-content-heading-color); /* [ LIGHT VIEW ] */ --wiki-navigation-background-color: var(--wiki-content-background-color--secondary); --wiki-navigation-background-color--secondary: var(--wiki-content-background-color); --wiki-navigation-border-color: var(--wiki-content-border-color); --wiki-navigation-text-color: var(--wiki-content-link-color); --wiki-navigation-text-color--hover: var(--wiki-content-link-color--hover); --wiki-navigation-selected-background-color: var(--wiki-content-background-color); --wiki-navigation-selected-border-color: var(--wiki-navigation-border-color); --wiki-navigation-selected-text-color: var(--wiki-content-text-color); /* [ LIGHT VIEW ] */ --wiki-neutral-color: var(--wiki-content-text-mix-color); --wiki-alert-color: #bf0017; --wiki-warning-color: #b05f30; --wiki-success-color: #0c742f; /**/ /*********************************** * Likely do not need to edit these * [ LIGHT VIEW ] ************************************/ --wiki-body-dynamic-color: #000000; --wiki-body-dynamic-color--inverted: #ffffff; --wiki-body-dynamic-color--secondary: #333333; --wiki-body-dynamic-color--secondary--inverted: #cccccc; --wiki-content-border-color--secondary: color-mix(in srgb, var(--wiki-content-border-color) 50%, transparent); --wiki-content-border-color--accent: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); --wiki-content-link-label-color: #ffffff; --wiki-content-dynamic-color: #000000; --wiki-content-dynamic-color--inverted: #ffffff; --wiki-content-dynamic-color--secondary: #333333; --wiki-content-dynamic-color--secondary--inverted: #cccccc; /* [ LIGHT VIEW ] */ --wiki-alert-label-color: #ffffff; --wiki-warning-label-color: #ffffff; --wiki-success-label-color: #ffffff; --wiki-icon-general-filter: ; /* do not set this to none, ignore the "unexpected token" error */ /**/ } /* end light styles */ /* Begin dark styles, delete from here to "end dark styles" if you don't want your wiki to support any dark themes (remove it from [[Mediawiki:Theme-definitions]] too, or ask wiki.gg staff for help doing this) */ /* FYI: .view- will affect any theme marked |kind=dark, */ /* individual themes are prefixed with .theme- instead */ .view-dark { /********************** * Probably edit these * [ DARK VIEW ] ***********************/ --wiki-body-background-color: #171717; --wiki-body-background-image: url(/images/c/c4/Site-background-dark.jpg); /* please find the file path by viewing the image directly (not at the File: page) */ --wiki-content-background-color: #202020; --wiki-content-background-opacity: 90%; --wiki-content-border-color: #991A51; --wiki-content-link-color: #6d8afb; /* if changing this, remember to change --wiki-icon-to-link-filter as well!!! */ /* [ DARK VIEW ] */ --wiki-accent-color: #ff4d9d; --wiki-accent-label-color: #000; --wiki-accent-link-color: #1e1e43; --wiki-icon-to-link-filter: invert(60%) sepia(70%) saturate(3715%) hue-rotate(206deg) brightness(101%) contrast(97%); /* put your --wiki-content-link-color into https://mrpie5.gitlab.io/css-filter-generator/ */ /**/ /******************* * Maybe edit these * [ DARK VIEW ] ********************/ --wiki-body-background-position: top center; --wiki-body-background-size:cover; --wiki-body-background-repeat: no-repeat; --wiki-body-background-attachment: fixed; --wiki-content-background-color--secondary: color-mix(in srgb, var(--wiki-content-background-color) 96%, var(--wiki-content-dynamic-color)); --wiki-content-text-color: #ededed; --wiki-content-link-color--visited: var(--wiki-content-link-color); --wiki-content-link-color--hover: var(--wiki-content-link-color); --wiki-content-redlink-color: #FC5B4F; --wiki-content-heading-color: var(--wiki-content-text-color); --wiki-accent-color--hover: color-mix(in srgb, var(--wiki-accent-color) 90%, var(--wiki-accent-label-color)); /* [ DARK VIEW ] */ --wiki-sidebar-background-color: var(--wiki-content-background-color); --wiki-sidebar-background-opacity: var(--wiki-content-background-opacity); --wiki-sidebar-border-color: var(--wiki-content-border-color); --wiki-sidebar-link-color: var(--wiki-content-link-color); --wiki-sidebar-link-color--hover: var(--wiki-content-link-color--hover); --wiki-sidebar-heading-color: var(--wiki-content-heading-color); /* [ DARK VIEW ] */ --wiki-navigation-background-color: var(--wiki-content-background-color--secondary); --wiki-navigation-background-color--secondary: var(--wiki-content-background-color); --wiki-navigation-border-color: var(--wiki-content-border-color); --wiki-navigation-text-color: var(--wiki-content-link-color); --wiki-navigation-text-color--hover: var(--wiki-content-link-color--hover); --wiki-navigation-selected-background-color: var(--wiki-content-background-color); --wiki-navigation-selected-border-color: var(--wiki-navigation-border-color); --wiki-navigation-selected-text-color: var(--wiki-content-text-color); /* [ DARK VIEW ] */ --wiki-neutral-color: var(--wiki-content-text-mix-color); --wiki-alert-color: #ff576a; --wiki-warning-color:#cf721c; --wiki-success-color: #13aa45; /**/ /*********************************** * Likely do not need to edit these * [ DARK VIEW ] ************************************/ --wiki-body-dynamic-color: #ffffff; --wiki-body-dynamic-color--inverted: #000000; --wiki-body-dynamic-color--secondary: #cccccc; --wiki-body-dynamic-color--secondary--inverted: #333333; --wiki-content-border-color--secondary: color-mix(in srgb, var(--wiki-content-border-color) 50%, transparent); --wiki-content-border-color--accent: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); --wiki-content-link-label-color: #000; --wiki-content-dynamic-color: #ffffff; --wiki-content-dynamic-color--inverted: #000000; --wiki-content-dynamic-color--secondary: #cccccc; --wiki-content-dynamic-color--secondary--inverted: #333333; /* [ DARK VIEW ] */ --wiki-alert-label-color: #000000; --wiki-warning-label-color: #000000; --wiki-success-label-color: #000000; --wiki-icon-general-filter: invert(100%); } /* End dark styles */ /************************************** * Shared styles * * You likely don't need to edit these * ***************************************/ :root{ --wiki-content-text-mix-color: color-mix(in srgb, var(--wiki-content-background-color), var(--wiki-content-text-color) 62%); --wiki-content-text-mix-color-95: color-mix(in srgb, var(--wiki-content-background-color) 95%, var(--wiki-content-text-color)); } /******************** * End shared styles * *********************/ /****************************** * Fallback for older browsers * * DONT EDIT THIS * *******************************/ @supports not (color:color-mix(in srgb, #000, transparent)) { .view-dark, .view-light, :root { --wiki-content-text-mix-color: var(--wiki-content-text-color); --wiki-content-text-mix-color-95: var(--wiki-content-background-color); --wiki-content-background-color--secondary: var(--wiki-content-dynamic-color--secondary--inverted); --wiki-content-border-color--secondary: var(--wiki-content-border-color); --wiki-content-border-color--accent: var(--wiki-accent-color); --wiki-accent-color--hover: var(--wiki-accent-color); } } /***************************** * End older browser fallback * ******************************/ /***************************** * PortableInfoboxes * ******************************/ :root { --pi-background: var(--wiki-content-background-color); --pi-secondary-background: var(--wiki-accent-color); --pi-secondary-background-label: var(--wiki-accent-label-color); --pi-border-color: color-mix(in srgb, var(--pi-secondary-background) 50%, transparent); } .portable-infobox .pi-title, .portable-infobox .pi-header { text-align:center; font-size:1.5em; background:var(--pi-secondary-background); /* fallback */ background:color-mix(in srgb, var(--pi-secondary-background) 75%, transparent); color:var(--pi-secondary-background-label); } .portable-infobox .pi-data { background:var(--wiki-content-background-color--secondary); } .portable-infobox .pi-image { padding: 8px; } .pi-image-thumbnail { max-width:100%; } .pi-caption { color: var(--wiki-content-text-mix-color); } .pi-section-navigation .pi-section-tab.pi-section-active, .pi-section-navigation .pi-section-tab.current, .pi-media-collection .pi-tab-link.current { background: var(--pi-secondary-background); color: var(--pi-secondary-background-label); } .pi-collapse > .pi-item:first-child { cursor: pointer; } /* overqualify these to overwrite normal content heading styles */ .mw-body .portable-infobox h2, .mw-body .portable-infobox h3 { border-bottom: 0; font-family: inherit; font-weight: 700; margin: 0; } /***************************** * End PortableInfoboxes * ******************************/ /******************* * Main page layout * ********************/ #mp-container { display:grid; gap:10px; } @media screen and (max-width:990px) { /* for mobile screens */ #mp-container{ grid-template-areas:var(--main-page-layout--mobile); grid-template-columns:var(--main-page-layout-columns--mobile,100%); } .mp-box.mp-hide-on-mobile { display:none; } } @media screen and (min-width:990px) and (max-width:1350px) { /* for narrow screens, between 990px and 1350px */ #mp-container { grid-template-areas:var(--main-page-layout--tablet); grid-template-columns:var(--main-page-layout-columns--tablet,1fr 1fr); } .mp-box.mp-hide-on-tablet { display:none; } } @media screen and (min-width:1350px) { /* for all other screens, 1350px and wider */ #mp-container { grid-template-areas:var(--main-page-layout--desktop); grid-template-columns:var(--main-page-layout-columns--desktop,2fr 1fr 2fr); } .mp-box.mp-hide-on-desktop { display:none; } } .mp-box { position:relative; display:flex; flex-flow:column nowrap; width: calc(100% - 2px); box-sizing: border-box; background:var(--wiki-content-background-color--secondary); /* fallback */ background:color-mix(in srgb, var(--wiki-content-background-color--secondary) 25%, transparent); border:1px solid var(--wiki-content-border-color); padding:0px; } .mp-body { height: 100%; display: flex; padding:0.5em; flex-flow: column nowrap; } .mp-box.centered-content .mp-body { height: 100%; display: flex; flex-flow: column nowrap; justify-content: space-evenly; } .mp-box.has-floating-image { display:block; } .mp-box.has-floating-image .mp-body { height:unset; display:block; } /* overqualified to override normal heading styles */ .mw-body .mp-box h2 { text-align:center; font-weight:bold; font-family:var(--wiki-heading-font-family); overflow: initial; border-bottom: 1px solid var(--wiki-content-border-color); font-size: 150%; margin: 0; padding: 5px 0; color:var(--wiki-content-heading-color); } #mp-box-welcome { text-align:center; position:relative; overflow:hidden; } #mp-box-welcome h2{ font-size: 200%; } #mp-welcome { display:flex; flex-flow:column nowrap; position: relative; height: 100%; z-index: 2; box-sizing: border-box; } #mp-welcome .welcome-subtitle { height: 100%; background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background:color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 85%, transparent); padding:0.5em; } #mp-banner { position: absolute; width: 100%; height: 100%; filter: blur(5px); z-index: -1; background: url(/images/e/e0/MP_banner.jpg); background-size: cover; background-repeat: no-repeat; background-position: top center; } .view-dark #mp-banner { filter: blur(5px) brightness(50%); } .view-light #mp-banner { filter: blur(5px) contrast(50%); } /* [[Template:MP_link]] */ .mp-links { --gap:10px; } .mp-links > ul { display: flex; flex-flow: row wrap; justify-content: space-evenly; margin: 2px; gap:var(--gap); } .mp-links > ul > li { display:flex; flex-flow:column nowrap; align-items:stretch; text-align: center; box-sizing:border-box; flex: max(calc(50% - var(--gap)), 5em) 1 1; outline:1px solid var(--wiki-content-link-color); transition:0.1s ease-in; } .mp-links > ul > li:hover { background-color:var(--wiki-content-background-color); /* fallback */ background-color:color-mix(in srgb, var(--wiki-content-link-color) 20%, transparent); } .mp-links.columns-1 > ul > li {flex: max(calc(100% - var(--gap)), 5em) 1 1;} .mp-links.columns-2 > ul > li {flex: max(calc(50% - var(--gap)), 5em) 1 1;} .mp-links.columns-3 > ul > li {flex: max(calc((100% / 3) - var(--gap)), 5em) 1 1;} .mp-links.columns-4 > ul > li {flex: max(calc(25% - var(--gap)), 5em) 1 1;} .mp-links.columns-5 > ul > li {flex: max(calc(20% - var(--gap)), 5em) 1 1;} .mp-links.columns-6 > ul > li {flex: max(calc((100% / 6) - var(--gap)), 5em) 1 1;} .mp-links.columns-7 > ul > li {flex: max(calc((100% / 7) - var(--gap)), 5em) 1 1;} .mp-links.columns-max > ul > li {flex: max(calc(0% - var(--gap)), 5em) 1 1;} .mp-links > ul > li:hover a { text-decoration: underline; } .mp-links > ul > li > a { display: flex; align-items: center; justify-content: center; height:100%; flex:1 1 auto; box-sizing:border-box; padding:5px; } .mp-links > ul > li > a:first-child { height:100%; } .mp-links > ul > li > a:last-child:not(:first-child) { height:unset; } .mp-links.stretch, .mp-links.stretch > ul { height:100%; } .mp-links.side-image li { flex-flow:row nowrap; } .mp-links.plain > ul > li { outline-color:transparent; } /*********************** * End main page layout * ************************/ /********************************************************************************************************************* * Semantically-correct horizontal lists (for Module:Navbox, and they're more machine-readable than {{*}}-formatting) * **********************************************************************************************************************/ .hlist dl, .hlist ol, .hlist ul { margin: 0; padding: 0; } /* Display list items inline */ .hlist dd, .hlist dt, .hlist li { /* * don't trust the note that says margin doesn't work with inline * removing margin: 0 makes dds have margins again * We also want to reset margin-right in Minerva */ margin: 0; display: inline; } /* Display requested top-level lists inline */ .hlist.inline, .hlist.inline dl, .hlist.inline ol, .hlist.inline ul, /* Display nested lists inline */ .hlist dl dl, .hlist dl ol, .hlist dl ul, .hlist ol dl, .hlist ol ol, .hlist ol ul, .hlist ul dl, .hlist ul ol, .hlist ul ul { display: inline; } /* Hide empty list items */ .hlist .mw-empty-li { display: none; } /* TODO: :not() can maybe be used here to remove the later rule. naive test * seems to work. more testing needed. like so: */ .hlist dt:not(:last-child)::after { content: ":\20"; } .hlist dd:not(:last-child)::after, .hlist li:not(:last-child)::after { /* "space, Middle Dot, space" We use unicode numbers instead of the raw characters due to a Firefox encoding bug on unicode characters. The space is also encoded because raw spaces combined with a unicode number strips the spaces under some conditions such as single-line lists */ /* content: "\20\00B7\20"; font-weight: bold; */ /* "space &nbsp; • &nbsp; space" There may (and likely) be an extra whitespace between <li>s, therefore we have to use a space character as last character of this sequence. By this way, the last space and the next whitespce will collapse as a single space, to make the whitespace on both sides of the middle dot the same width. */ content: "\20\A0\2022\A0\20"; font-weight: inherit; } /* Add parentheses around nested lists */ .hlist dd ol::before, .hlist dd ul::before, .hlist dd dl::before, .hlist dt ol::before, .hlist dt ul::before, .hlist dt dl::before, .hlist li ol::before, .hlist li ul::before, .hlist li dl::before { content: "\20("; font-weight: inherit; } .hlist dd ol::after, .hlist dd ul::after, .hlist dd dl::after, .hlist dt ol::after, .hlist dt ul::after, .hlist dt dl::after, .hlist li ol::after, .hlist li ul::after, .hlist li dl::after { content: ")"; font-weight: inherit; } /* Put ordinals in front of ordered list items */ .hlist ol { counter-reset: listitem; } .hlist ol > li { counter-increment: listitem; } .hlist ol > li::before { content: " " counter(listitem) ".\20"; } /* Progressive enhancement: * try to make the dot always follow the list item in same line */ .hlist :is(li,dt,dd):not(:has(:is(li,dt,dd))){ display: inline-block; } /******************************************** * End semantically-correct horizontal lists * *********************************************/ /*** Miscellaneous ***/ .responsive-image { max-width:100%; height:auto; } .view-dark .invert-on-dark, .view-light .invert-on-light { filter:invert(100%); } .pixelated { image-rendering:pixelated; } @media screen and (min-width:720px) { .mobileonly { display:none; } } @media screen and (max-width:720px) { .nomobile { display:none; } } /*** Utility classes for standard MW galleries ***/ /* it's important that spaced comes before centered in the sheet */ .gallery.gallery.gallery.spaced { /* this selector looks ridiculous but is actually part of stock Vector and therefore a necessary override */ display:flex; flex-flow:row wrap; justify-content:space-evenly; margin-left:unset; } .gallery.centered { text-align:center; } /************************** * Start Modular Templates * **************************/ /********* [[Template:Ambox]] *********/ .ambox { --ambox-color:var(--wiki-accent-color); border: 1px solid var(--wiki-content-border-color); border-left: 10px solid var(--ambox-color); border-radius: 2px; display: flex; align-items: center; gap: .6em; margin: 1em 0; padding: 3px .6em; background-color: var(--wiki-content-background-color--secondary); box-shadow: 2px 2px 5px 0px #0002; } @media (min-width: 720px) { .ambox { margin-inline: 10%; } } .ambox.tiny { padding: .04rem .5em; margin-inline: 0; width: fit-content; } .ambox + .ambox { margin-top: -.6em; } .ambox-content { flex: 1; } .ambox-content p { margin: .15em 0; } .ambox-title { font-weight: bold; } /********* [[Template:Hatnote]] *********/ .hatnote { padding: 1px 0 1px 1.6em; margin-bottom: 0.5em; font-style: italic; border-top: 1px solid var(--wiki-content-border-color--secondary); border-bottom: 1px solid var(--wiki-content-border-color--secondary); } .hatnote.icon { padding-left: 0; } /********* [[Template:Spoiler]] *********/ .spoiler-content { background-color: var(--wiki-content-dynamic-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 50%, transparent); transition: all 0.3s; cursor: pointer; overflow:auto; } .spoiler-content > * { pointer-events:none; opacity: 0; transition: all 0.3s; } .spoiler-content.show { background-color: transparent; } .spoiler-content.show > * { pointer-events:unset; opacity: 1; } /********* [[Template:Link icon]] *********/ .link-icon { --link-icon-line-height: 1.5em; --link-icon-size: 1.5em; display: inline-flex; align-items: center; height: var(--link-icon-line-height); vertical-align: bottom; } .link-icon .regular { align-self: center; } .link-icon .regular a { display: flex; } .link-icon .regular img { height: var(--link-icon-size); max-width: var(--link-icon-size); } .link-icon .fallback { outline: 1px solid var(--wiki-content-text-color); border-radius: 50%; text-align: center; width: var(--link-icon-size); line-height: var(--link-icon-size); } .link-icon.notext .fallback { display: inline-block; } .link-icon.notext { display: inline; } /********* [[Template:Quote]] *********/ .quote { background: var(--wiki-content-background-color--secondary); border-radius: 5px; border: 2px solid var(--wiki-content-border-color); margin: .5em 0; padding: .5em; overflow-y: hidden; } .quote .block { display: block; } .quote .title { font-size: large; font-weight: bold; } .quote .content { font-style: italic; } .quote .author { font-weight: bold; text-align: end; } .quote .marks-wrapper { display: flex; gap: 5px; } .quote .marks-wrapper::before, .quote .marks-wrapper::after { font-size: 100px; line-height: 0px; } .quote .marks-wrapper::before { content: "\201C"; margin-top: 40px; } .quote .marks-wrapper::after { content: "\201D"; align-self: end; margin-bottom: -10px; } .client-js .mw-charinsert-item { display:none; } /************************ * End Modular Templates * *************************/ /***************************** * Used by [[Template:Color]] * ******************************/ .color__splotch { display:inline-block; height:1em; width:1em; box-sizing:border-box; vertical-align:text-top; border-radius:50%; border:1px solid var(--wiki-content-text-color); } /********************* * End Template:Color * **********************/ c3a231d8dc2710e154a654fc77cdc0f735905de4 MediaWiki:Common.css/doc 8 4 5 2025-03-25T22:47:33Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <div class="mw-parser-output" id="dl-variable-doc"><!-- hide this in your global.css if you're familiar with how default loadout works and this documentation is just in your way --> ==Documentation== This wiki is using the theming template from the [[dlw:|default loadout]]. This template is intended to minimize the work required to create a custom colored version of the standard [[mw:Skin:Vector|Vector]] skin, while maximizing the various nooks and crannies that those colors reach, all while keeping everything legible and matching. Please be aware of the [[support:Customization policy|customization policy]] when modifying the theme. ===Themes=== The [[support:Theme Toggle|Theme Toggle]] extension is installed, and allows multiple themes to be used. In the actual stylesheet below this documentation, you'll find two huge rules at the top, each containing lots of [https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties CSS color variables]. They look like this: <syntaxhighlight lang=css> :root, /* Begin light styles, delete from here to "end light styles" if you don't want your wiki to support any light themes (remove from [[Mediawiki:Theme-definitions]] too, or ask wiki.gg staff for help doing this) */ /* FYI: .view- will affect any theme marked |kind=light, */ /* individual themes are prefixed with .theme- instead */ .view-light { /********************** * Probably edit these * [ LIGHT VIEW ] ***********************/ --wiki-body-background-color: #F6F6F6; --wiki-body-background-image: url(/images/8/80/Site-background.jpg); /* and so on */ } .view-dark { /********************** * Probably edit these * [ DARK VIEW ] ***********************/ --wiki-body-background-color: #171717; --wiki-body-background-image: url(/images/c/c4/Site-background-dark.jpg); /* and so on */ } </syntaxhighlight> These are the standard light and dark themes, defined in [[Mediawiki:Theme-definitions]]. '''Important''': if you want your wiki to only support a single theme, edit that page and remove the line you don't want (don't remove both). The <code>:root</code> selector is a fallback, meaning that in case something happens and Theme Toggle fails to work, the following theme will still mostly work. If you have multiple themes, you can move the <code>:root</code> rule to whichever you'd consider the "default" theme. ===Non-color variables=== {| class="wikitable" ! Variable name !! Notes |- | --wiki-body-background-image | This is the image path to the wiki's background image. Usually this is uploaded to File:Site-background.jpg, File:Site-background-light.jpg, and/or File:Site-background-dark.jpg. While there's not a hard file size limit, it is recommended that this not exceed 250 KB. File size can be reduced by resizing (anything over 2560x1440p is excessive), converting to a jpg, and compressed using sites like [https://tinypng.com TinyPNG]. |- | --wiki-body-background-position | The [https://developer.mozilla.org/en-US/docs/Web/CSS/background-position background-position] of the background image. Usually this is set to <code>top center</code>. |- | --wiki-body-background-size | The [https://developer.mozilla.org/en-US/docs/Web/CSS/background-size background-size] of the background image. Usually this is set to <code>cover</code>. |- | --wiki-body-background-repeat | The [https://developer.mozilla.org/en-US/docs/Web/CSS/background-repeat background-repeat] of the background image. Usually this is set to <code>no-repeat</code>. |- | --wiki-body-background-attachment | The [https://developer.mozilla.org/en-US/docs/Web/CSS/background-attachment background-attachment] of the background image. Usually this is set to <code>fixed</code>. |- | --wiki-body-font-family | The font family of most of the wiki, such as the sidebar, navigation, and content text. Usually this is sans-serif. If modifying this, use a simple font that is easy to read. See <code>--wiki-heading-font-family</code> if you want to incorporate a more decorative font into the theme. |- | --wiki-heading-font-family | The font family of headings, such as the page title and section headings. This font is usually displayed in a larger size, so it's safer to use a more decorative font than <code>--wiki-body-font-family</code>, but still try to keep it legible. |- | --wiki-sidebar-heading-font-family | The font family of sidebar headings. In contrast to <code>--wiki-heading-font-family</code>, this is usually displayed in a smaller size, so keep it simple and easy to read. |- | --wiki-sidebar-border-radius | The [https://developer.mozilla.org/en-US/docs/Web/CSS/border-radius border-radius] of the sidebar. If <code>--wiki-sidebar-portal-spacing</code> is set to 0, then only the top and bottom corners of the sidebar as a whole will be affected, otherwise every portal will have all its corners affected. Units must be specified even if this is set to 0. |- | --wiki-sidebar-portal-spacing | The space between each portal in the sidebar. Units must be specified even if this is set to 0. |- | --wiki-content-border-width | The thickness of the border around the content area. |- | --wiki-sidebar-border-width | The thickness of the border around the sidebar portals. |- | --wiki-content-background-opacity | The opacity of the main content area, to let the wiki's background image show through. Please keep this high, usually above 90%, or it can make reading text difficult. |- | --wiki-sidebar-background-opacity | The background opacity of the sidebar. Usually this inherits <code>--wiki-content-background-opacity</code>. |- | --wiki-icon-general-filter | A filter applied to many icons to make them visible on dark themes. Usually this is just <code>invert(100%)</code> on dark themes and blank on light themes. |- | --wiki-icon-to-link-filter | A filter that converts many icons into the same color as <code>--wiki-content-link-color</code>. This can be generated by plugging that into https://mrpie5.gitlab.io/css-filter-generator/. |} ===List of all colors with contrast checking=== The table below shows all the colors currently in use, as well as notes on how to use them. The last column shows which colors are expected to show up as text against other colors. With the exception of <code>--wiki-content-text-mix-color-95</code>, all text in the last column should be ''clearly'' legible. If it is not, you may need to adjust one of the referenced colors in your color palette. Keep in mind that changes to the opacity variables in the section above will cause the content and sidebar background colors to mix with the body background color/image, so the contrasts below may not be perfectly accurate. {| class="wikitable" ! Variable name !! Color !! style="width: 40em;" | Notes !! Test contrast against these variables |- | --wiki-body-background-color | style="background-color:var(--wiki-body-background-color);" | | The background color behind the background image. This usually only shows up if the background image doesn't load, doesn't fill the screen, or has some transparency. This color should be similar to the overall color of the background image, or the top-left corner if it is made up of many different colors. In the former case, https://matkl.github.io/average-color/ is helpful. | style="background-color:var(--wiki-body-background-color);" | <span style="color:var(--wiki-body-dynamic-color);">--wiki-body-dynamic-color</span><br/> <span style="color:var(--wiki-body-dynamic-color--secondary);">--wiki-body-dynamic-color--secondary</span><br/> |- | --wiki-body-dynamic-color | style="background-color:var(--wiki-body-dynamic-color);" | | This is expected to contrast sharply with the body-background-color, for cases when text needs to be displayed against it. Usually this is {{color|#000}} on light themes and {{color|#fff}} on dark themes. | style="background-color:var(--wiki-body-dynamic-color);" | <span style="color:var(--wiki-body-background-color)">--wiki-body-background-color</span><br/> <span style="color:var(--wiki-body-dynamic-color--inverted);">--wiki-body-dynamic-color--inverted</span><br/> <span style="color:var(--wiki-body-dynamic-color--secondary--inverted);">--wiki-body-dynamic-color--secondary--inverted</span><br/> |- | --wiki-body-dynamic-color--inverted | style="background-color:var(--wiki-body-dynamic-color--inverted);" | | The inverse of <code>--wiki-body-dynamic-color</code>. This should optimally have almost no contrast with the body-background-color. | style="background-color:var(--wiki-body-dynamic-color--inverted);" | <span style="color:var(--wiki-body-dynamic-color);">--wiki-body-dynamic-color</span><br/> <span style="color:var(--wiki-body-dynamic-color--secondary);">--wiki-body-dynamic-color--secondary</span><br/> |- | --wiki-body-dynamic-color--secondary | style="background-color:var(--wiki-body-dynamic-color--secondary);" | | A slightly different version of body-dynamic-color. Usually this is {{color|#333}} on light themes and {{color|#ccc}} on dark themes. | style="background-color:var(--wiki-body-dynamic-color--secondary);" | <span style="color:var(--wiki-body-background-color)">--wiki-body-background-color</span><br/> <span style="color:var(--wiki-body-dynamic-color--inverted);">--wiki-body-dynamic-color--inverted</span><br/> <span style="color:var(--wiki-body-dynamic-color--secondary--inverted);">--wiki-body-dynamic-color--secondary--inverted</span><br/> |- | --wiki-body-dynamic-color--secondary--inverted | style="background-color:var(--wiki-body-dynamic-color--secondary--inverted);" | | The inverse of <code>--wiki-body-dynamic-color--secondary</code>. | style="background-color:var(--wiki-body-dynamic-color--secondary--inverted);" | <span style="color:var(--wiki-body-dynamic-color);">--wiki-body-dynamic-color</span><br/> <span style="color:var(--wiki-body-dynamic-color--secondary);">--wiki-body-dynamic-color--secondary</span><br/> |- | --wiki-content-background-color | style="background-color:var(--wiki-content-background-color);" | | The background color of the main content area. | style="background-color:var(--wiki-content-background-color);" | <span style="color:var(--wiki-content-text-color)">--wiki-content-text-color</span><br/> <span style="color:var(--wiki-content-link-color)">--wiki-content-link-color</span><br/> <span style="color:var(--wiki-content-link-color--visited)">--wiki-content-link-color--visited</span><br/> <span style="color:var(--wiki-content-link-color--hover)">--wiki-content-link-color--hover</span><br/> <span style="color:var(--wiki-content-redlink-color)">--wiki-content-redlink-color</span><br/> <span style="color:var(--wiki-content-text-mix-color)">--wiki-content-text-mix-color</span><br/> <span style="color:var(--wiki-content-dynamic-color)">--wiki-content-dynamic-color</span><br/> <span style="color:var(--wiki-content-dynamic-color--secondary)">--wiki-content-dynamic-color--secondary</span><br/> <span style="color:var(--wiki-content-heading-color)">--wiki-content-heading-color</span><br/> <span style="color:var(--wiki-accent-color)">--wiki-accent-color</span><br/> <span style="color:var(--wiki-neutral-color)">--wiki-neutral-color</span><br/> <span style="color:var(--wiki-success-color)">--wiki-success-color</span><br/> <span style="color:var(--wiki-alert-color)">--wiki-alert-color</span><br/> |- | --wiki-content-background-color--secondary | style="background-color:var(--wiki-content-background-color--secondary);" | | A secondary content background to highlight certain things. Usually this is <code>--wiki-content-background-color</code> with saturation and/or value reduced or increased by about 10%, but you're free to make it whatever you want provided the contrast checks to the right still pass. | style="background-color:var(--wiki-content-background-color--secondary);" | <span style="color:var(--wiki-content-text-color)">--wiki-content-text-color</span><br/> <span style="color:var(--wiki-content-link-color)">--wiki-content-link-color</span><br/> <span style="color:var(--wiki-content-link-color--visited)">--wiki-content-link-color--visited</span><br/> <span style="color:var(--wiki-content-link-color--hover)">--wiki-content-link-color--hover</span><br/> <span style="color:var(--wiki-content-redlink-color)">--wiki-content-redlink-color</span><br/> <span style="color:var(--wiki-content-text-mix-color)">--wiki-content-text-mix-color</span><br/> <span style="color:var(--wiki-content-dynamic-color)">--wiki-content-dynamic-color</span><br/> <span style="color:var(--wiki-content-dynamic-color--secondary)">--wiki-content-dynamic-color--secondary</span><br/> <span style="color:var(--wiki-content-heading-color)">--wiki-content-heading-color</span><br/> <span style="color:var(--wiki-accent-color)">--wiki-accent-color</span><br/> <span style="color:var(--wiki-neutral-color)">--wiki-neutral-color</span><br/> <span style="color:var(--wiki-success-color)">--wiki-success-color</span><br/> <span style="color:var(--wiki-alert-color)">--wiki-alert-color</span><br/> |- | --wiki-content-border-color | style="background-color:var(--wiki-content-border-color);" | | Border color for the main content area and elements within it. | N/A |- | --wiki-content-border-color--secondary | style="background-color:var(--wiki-content-border-color--secondary);" | | A secondary content border color for elements that do not need to stand out as much. Usually this is <code>--wiki-content-border-color</code> with 50% transparency, but it can be adjusted or made identical if it is too subtle. | N/A |- | --wiki-content-border-color--accent | style="background-color:var(--wiki-content-border-color--accent);" | | A border color that is used as an accent. Usually this is <code>--wiki-accent-color</code> with 50% transparency, but it can be any variation of the accent color. | N/A |- | --wiki-content-text-color | style="background-color:var(--wiki-content-text-color);" | | Text color for the main content area. | style="background-color:var(--wiki-content-text-color);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span><br/> |- | --wiki-content-link-color | style="background-color:var(--wiki-content-link-color);" | | Links within the content area. Please do not make this red, as red links on wikis traditionally denote pages that don't exist. | style="background-color:var(--wiki-content-link-color);" | <span style="color:var(--wiki-content-link-label-color);">--wiki-content-link-label-color</span> |- | --wiki-content-link-label-color | style="background-color:var(--wiki-content-link-label-color);" | | This is used when placing text on an element with the link color as a background, such as a button. | style="background-color:var(--wiki-content-link-label-color);" | <span style="color:var(--wiki-content-link-color);">--wiki-content-link-color</span> |- | --wiki-content-link-color--visited | style="background-color:var(--wiki-content-link-color--visited);" | | The color of visited links. This is optional, and usually inherits <code>--wiki-content-link-color</code>. | style="background-color:var(--wiki-content-link-color--visited);" | <span style="color:var(--wiki-content-background-color);">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary);">--wiki-content-background-color--secondary</span> |- | --wiki-content-link-color--hover | style="background-color:var(--wiki-content-link-color--hover);" | | The color links change to when hovered over. This is optional, and usually inherits <code>--wiki-content-link-color</code>. | style="background-color:var(--wiki-content-link-color--hover);" | <span style="color:var(--wiki-content-background-color);">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary);">--wiki-content-background-color--secondary</span> |- | --wiki-content-redlink-color | style="background-color:var(--wiki-content-redlink-color);" | | The color of links to pages that don't exist. Since these should only rarely be seen, you can be a little lax about choosing a color that contrasts with the background, but it should still be legible. | style="background-color:var(--wiki-content-redlink-color);" | <span style="color:var(--wiki-content-background-color);">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary);">--wiki-content-background-color--secondary</span> |- | --wiki-content-text-mix-color | style="background-color:var(--wiki-content-text-mix-color);" | | A mix of <code>--wiki-content-text-color</code> and <code>--wiki-content-background-color</code>, calculated automatically. This is generally used to mark disabled elements or placeholder text. | style="background-color:var(--wiki-content-text-mix-color);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span><br/> <span style="color:var(--wiki-content-text-mix-color-95)">--wiki-content-text-mix-color-95</span> |- | --wiki-content-text-mix-color-95 | style="background-color:var(--wiki-content-text-mix-color-95);" | | The same as <code>--wiki-content-text-mix-color</code>, but the mix is 95% <code>--wiki-content-background-color</code>, calculated automatically. This is used to mark disabled elements. The contrast checker to the right should actually be very hard to read but not impossible. | style="background-color:var(--wiki-content-text-mix-color-95);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span> |- | --wiki-content-dynamic-color | style="background-color:var(--wiki-content-dynamic-color);" | | This is expected to contrast sharply with <code>--wiki-content-background-color</code>. Usually this is {{color|#000}} on light themes and {{color|#fff}} on dark themes. | style="background-color:var(--wiki-content-dynamic-color);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-dynamic-color--inverted)">--wiki-content-dynamic-color--inverted</span><br/> <span style="color:var(--wiki-content-dynamic-color--secondary--inverted)">--wiki-content-dynamic-color--secondary--inverted</span><br/> |- | --wiki-content-dynamic-color--inverted | style="background-color:var(--wiki-content-dynamic-color--inverted);" | | The inverse of <code>--wiki-content-dynamic-color</code>. | style="background-color:var(--wiki-content-dynamic-color--inverted);" | <span style="color:var(--wiki-content-dynamic-color)">--wiki-content-dynamic-color</span><br/> <span style="color:var(--wiki-content-dynamic-color--secondary)">--wiki-content-dynamic-color--secondary</span><br/> |- | --wiki-content-dynamic-color--secondary | style="background-color:var(--wiki-content-dynamic-color--secondary);" | | A slightly different version of <code>--wiki-content-dynamic-color</code>. Usually this is {{color|#333}} on light themes and {{color|#ccc}} on dark themes. | style="background-color:var(--wiki-content-dynamic-color--secondary);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-dynamic-color--inverted)">--wiki-content-dynamic-color--inverted</span><br/> <span style="color:var(--wiki-content-dynamic-color--secondary--inverted)">--wiki-content-dynamic-color--secondary--inverted</span><br/> |- | --wiki-content-dynamic-color--secondary--inverted | style="background-color:var(--wiki-content-dynamic-color--secondary--inverted);" | | The inverse of <code>--wiki-content-dynamic-color--secondary</code>. | style="background-color:var(--wiki-content-dynamic-color--secondary--inverted);" | <span style="color:var(--wiki-content-dynamic-color)">--wiki-content-dynamic-color</span><br/> <span style="color:var(--wiki-content-dynamic-color--secondary)">--wiki-content-dynamic-color--secondary</span><br/> |- | --wiki-content-heading-color | style="background-color:var(--wiki-content-heading-color);" | | The color of headings, such as the page title and section headings. Usually this is set to <code>--wiki-content-text-color</code>, but feel free to give it a different color to spice up the theme a little. | style="background-color:var(--wiki-content-heading-color);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span> |- | --wiki-accent-color | style="background-color:var(--wiki-accent-color);" | | Used to style infoboxes, navboxes, focused element outlines, and some buttons, such as the save button when editing. | style="background-color:var(--wiki-accent-color);" | <span style="color:var(--wiki-accent-label-color)">--wiki-accent-label-color</span><br/> <span style="color:var(--wiki-accent-link-color)">--wiki-accent-link-color</span><br/> <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span><br/> |- | --wiki-accent-color--hover | style="background-color:var(--wiki-accent-color--hover);" | | The color of accent-color when hovered over, in some cases. Usually this is just accent-color with saturation and/or value reduced or increased by about 10%, but you're free to make it whatever you want provided the contrast checks to the right still pass. | style="background-color:var(--wiki-accent-color--hover);" | <span style="color:var(--wiki-accent-label-color)">--wiki-accent-label-color</span> |- | --wiki-accent-label-color | style="background-color:var(--wiki-accent-label-color);" | | The color of normal text against the accent color. | style="background-color:var(--wiki-accent-label-color);" | <span style="color:var(--wiki-accent-color)">--wiki-accent-color</span><br/> <span style="color:var(--wiki-accent-color--hover)">--wiki-accent-color--hover</span><br/> |- | --wiki-accent-link-color | style="background-color:var(--wiki-accent-link-color);" | | The color of links against the accent color. | style="background-color:var(--wiki-accent-link-color);" | <span style="color:var(--wiki-accent-color)">--wiki-accent-color</span> |- | --wiki-sidebar-background-color | style="background-color:var(--wiki-sidebar-background-color);" | | The background color of the sidebar to the left of the content area. Usually this inherits <code>--wiki-content-background-color</code>. | style="background-color:var(--wiki-sidebar-background-color);" | <span style="color:var(--wiki-sidebar-link-color)">--wiki-sidebar-link-color</span><br/> <span style="color:var(--wiki-sidebar-heading-color)">--wiki-sidebar-heading-color</span><br/> |- | --wiki-sidebar-border-color | style="background-color:var(--wiki-sidebar-border-color);" | | The border color of the sidebar. Usually this inherits <code>--wiki-content-border-color</code>. | N/A |- | --wiki-sidebar-link-color | style="background-color:var(--wiki-sidebar-link-color);" | | The color of links in the sidebar. Usually this inherits <code>--wiki-content-link-color</code>. | style="background-color:var(--wiki-sidebar-link-color);" | <span style="color:var(--wiki-sidebar-background-color)">--wiki-sidebar-background-color</span> |- | --wiki-sidebar-link-color--hover | style="background-color:var(--wiki-sidebar-link-color--hover);" | | The color links change to when hovered over. This is optional, and usually inherits <code>--wiki-content-link-color--hover</code>. | style="background-color:var(--wiki-sidebar-link-color--hover);" | <span style="color:var(--wiki-sidebar-background-color)">--wiki-sidebar-background-color</span> |- | --wiki-sidebar-heading-color | style="background-color:var(--wiki-sidebar-heading-color);" | | The color of headings in the sidebar. Usually this inherits <code>--wiki-content-heading-color</code>. | style="background-color:var(--wiki-sidebar-heading-color);" | <span style="color:var(--wiki-sidebar-background-color)">--wiki-sidebar-background-color</span> |- | --wiki-navigation-background-color | style="background-color:var(--wiki-navigation-background-color);" | | The primary background color of the navigation tabs above the content area. Usually this inherits <code>--wiki-content-background-color--secondary</code>. | style="background-color:var(--wiki-navigation-background-color);" | <span style="color:var(--wiki-navigation-text-color)">--wiki-navigation-text-color</span><br/> |- | --wiki-navigation-background-color--secondary | style="background-color:var(--wiki-navigation-background-color--secondary);" | | The upper background color of the navigation tabs, as well as the background color of the "More" menu dropdown. Usually this inherits <code>--wiki-content-background-color</code>. | style="background-color:var(--wiki-navigation-background-color--secondary);" | <span style="color:var(--wiki-navigation-text-color)">--wiki-navigation-text-color</span><br/> |- | --wiki-navigation-border-color | style="background-color:var(--wiki-navigation-border-color);" | | Border color of the navigation tabs. Usually this inherits <code>--wiki-content-border-color</code>. | N/A |- | --wiki-navigation-text-color | style="background-color:var(--wiki-navigation-text-color);" | | The color of text in the navigation tabs. Usually this inherits <code>--wiki-content-link-color</code>. | style="background-color:var(--wiki-navigation-text-color);" | <span style="color:var(--wiki-navigation-background-color)">--wiki-navigation-background-color</span><br/> <span style="color:var(--wiki-navigation-background-color--secondary)">--wiki-navigation-background-color--secondary</span><br/> |- | --wiki-navigation-text-color--hover | style="background-color:var(--wiki-navigation-text-color--hover);" | | The color of text in the navigation tabs when hovered. Usually this inherits <code>--wiki-content-link-color--hover</code>. | style="background-color:var(--wiki-navigation-text-color--hover);" | <span style="color:var(--wiki-navigation-background-color)">--wiki-navigation-background-color</span><br/> <span style="color:var(--wiki-navigation-background-color--secondary)">--wiki-navigation-background-color--secondary</span><br/> |- | --wiki-navigation-selected-background-color | style="background-color:var(--wiki-navigation-selected-background-color);" | | The background color of the currently active navigation tab. Usually this inherits <code>--wiki-content-background-color</code> | style="background-color:var(--wiki-navigation-selected-background-color);" | <span style="color:var(--wiki-navigation-selected-text-color)">--wiki-navigation-selected-text-color</span><br/> |- | --wiki-navigation-selected-border-color | style="background-color:var(--wiki-navigation-selected-border-color);" | | The border color of the currently active navigation tab. Usually this inherits <code>--wiki-navigation-border-color</code> | N/A |- | --wiki-navigation-selected-text-color | style="background-color:var(--wiki-navigation-selected-text-color);" | | The text color of the currently active navigation tab. Usually this inherits <code>--wiki-content-text-color</code> | style="background-color:var(--wiki-navigation-selected-text-color);" | <span style="color:var(--wiki-navigation-selected-background-color)">--wiki-navigation-selected-background-color</span><br/> |- | --wiki-neutral-color | style="background-color:var(--wiki-neutral-color);" | | A gray-ish color for displaying neutral text, such as a diff size of 0 in RecentChanges and page history. Usually this inherits <code>--wiki-content-text-mix-color</code>, but can be set explicitly if that color is not gray enough. | style="background-color:var(--wiki-neutral-color);" | <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span> |- | --wiki-alert-color | style="background-color:var(--wiki-alert-color);" | | A general, usually red-ish color used for negative notices, most notably negative diffs in RecentChanges and page history, and the "cancel" button when editing. | style="background-color:var(--wiki-alert-color);" | <span style="color:var(--wiki-alert-label-color)">--wiki-alert-label-color</span><br/> <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span><br/> |- | --wiki-alert-label-color | style="background-color:var(--wiki-alert-label-color);" | | The color of text against <code>--wiki-alert-color</code> as a background. | style="background-color:var(--wiki-alert-label-color);" | <span style="color:var(--wiki-alert-color)">--wiki-alert-color</span><br/> |- | --wiki-warning-color | style="background-color:var(--wiki-warning-color);" | | A general, usually orange-ish color used for warning notices. | style="background-color:var(--wiki-warning-color);" | <span style="color:var(--wiki-warning-label-color)">--wiki-warning-label-color</span><br/> <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> |- | --wiki-warning-label-color | style="background-color:var(--wiki-warning-label-color);" | | The color of text against <code>--wiki-warning-color</code> as a background. | style="background-color:var(--wiki-warning-label-color);" | <span style="color:var(--wiki-warning-color)">--wiki-warning-color</span><br/> |- | --wiki-success-color | style="background-color:var(--wiki-success-color);" | | A general, usually green-ish color used for success notices, most noticeably positive diffs in RecentChanges and page history. | style="background-color:var(--wiki-success-color);" | <span style="color:var(--wiki-success-label-color)">--wiki-success-label-color</span><br/> <span style="color:var(--wiki-content-background-color)">--wiki-content-background-color</span><br/> <span style="color:var(--wiki-content-background-color--secondary)">--wiki-content-background-color--secondary</span><br/> |- | --wiki-success-label-color | style="background-color:var(--wiki-success-label-color);" | | The color of text against <code>--wiki-success-color</code> as a background. | style="background-color:var(--wiki-success-label-color);" | <span style="color:var(--wiki-success-color)">--wiki-success-color</span><br/> |} ==Stylesheet== <!-- When rendered on common.css, the actual stylesheet will be right here --> </div> 58f90e2fed90701650577a6fd770f265da41e96f MediaWiki:DataMaps.css 8 5 6 2025-03-25T22:47:34Z Mr Pie 5 2833 Adding default set of pages css text/css /** Container */ .ext-datamaps-container-content .ext-datamaps-container-leaflet { background: var(--wiki-content-background-color--secondary); } /** Legend */ .ext-datamaps-container .ext-datamaps-control-expandable[aria-expanded="true"] { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-background-color--secondary) 95%, transparent); } .ext-datamaps-container .oo-ui-tabOptionWidget { color: var(--wiki-content-link-color); } .ext-datamaps-container .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected { background: var(--wiki-content-link-color); box-shadow: none; color: var(--wiki-content-link-label-color); } /** Popups */ .ext-datamaps-container .leaflet-popup-content-wrapper, .ext-datamaps-container .leaflet-popup-tip { background: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); } .ext-datamaps-container .ext-datamaps-popup-buttons a, .ext-datamaps-container .leaflet-popup-close-button { filter: var(--wiki-icon-general-filter); cursor: pointer; } .ext-datamaps-popup-header .ext-datamaps-popup-subtitle, .ext-datamaps-popup-header .ext-datamaps-popup-location { color: var(--wiki-content-text-mix-color); } .ext-datamaps-popup .ext-datamaps-popup-tools li a { border: 1px solid var(--wiki-content-link-color); transition: background 100ms, color 100ms; } .ext-datamaps-popup .ext-datamaps-popup-tools li a:hover { background: var(--wiki-content-link-color); color: var(--wiki-content-link-label-color); } /** Controls */ .ext-datamaps-container .leaflet-bar { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-link-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-link-color) 50%, transparent); } .ext-datamaps-container .leaflet-bar button:hover { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 25%, transparent); } .ext-datamaps-container .leaflet-control { color: var(--wiki-content-text-color); } .leaflet-control-container .oo-ui-buttonElement > .oo-ui-buttonElement-button { min-height: unset; } .ext-datamaps-container .leaflet-control button { border-bottom-color: var(--wiki-content-link-color); /* fallback */ border-bottom-color: color-mix(in srgb, var(--wiki-content-link-color) 50%, transparent); color: var(--wiki-content-text-color); } /* HACK: awful selector, v1.0 will prolly use a standard class on these */ .ext-datamaps-container .ext-datamaps-control span[class^="oo-ui-icon"] { filter: var(--wiki-icon-general-filter); } /** Search */ .ext-datamaps-container .ext-datamaps-control-search ul.ext-datamaps-control-search-results { background: var(--wiki-content-background-color--secondary); } .ext-datamaps-container .ext-datamaps-control-search ul.ext-datamaps-control-search-results li:focus, .ext-datamaps-container .ext-datamaps-control-search ul.ext-datamaps-control-search-results li[data-highlighted="true"] { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-link-color) 15%, transparent); color: var(--wiki-content-link-color); } .ext-datamaps-container .ext-datamaps-container-status > :not(.oo-ui-widget) { background:var(--wiki-content-background-color--secondary); color:var(--wiki-content-text-mix-color); } .ext-datamaps-container .leaflet-control-container .ext-datamaps-control-coords { background: var(--wiki-content-background-color); color: var(--wiki-content-text-color); } dea74cc9ac838a0e391ed861d5ffb6bd9c981383 MediaWiki:Gadget-userProfile.css 8 6 7 2025-03-25T22:47:36Z Mr Pie 5 2833 Adding default set of pages css text/css #contentSub > * + .horse-userprofile { margin-top: 1em; } .horse-userprofile { font-size: 120%; color: var(--wiki-content-text-color); border: 2px solid var(--wiki-content-border-color); padding: 6px 12px; } .horse-userprofile-info span:first-of-type { font-weight: bold; } 1729445bb17e2974426befaf9bd441ab4bf189c5 MediaWiki:Gadget-userProfile.js 8 7 8 2025-03-25T22:47:37Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript // User profile // <nowiki> mw.loader.using( [ 'mediawiki.util', 'mediawiki.api' ] ).done( function() { var username = mw.config.get('wgRelevantUserName'); var lang = mw.language.bcp47(mw.config.get('wgUserLanguage')); if ( username && !window.loadedHorseUserProfile ) { window.loadedHorseUserProfile = true; var dateOptions = { year: "numeric", month: "short", day: "numeric", hour: "2-digit", minute: "2-digit", timeZone: "UTC", timeZoneName: "short" }; var api = new mw.Api(); if ( mw.util.isIPAddress(username) ) api.get( { action: 'query', list: ['usercontribs', 'blocks'], ucuser: username, ucprop: [], uclimit: 'max', bkip: username, bkprop: ['user', 'by', 'timestamp', 'expiry', 'reason'], bklimit: 1, formatversion: 2 } ).done( function(data) { var editcount = data.query.usercontribs.length; if ( data.continue ) editcount = data.limits.usercontribs+'+' var user = { groups: ['*'], editcount: editcount }; formatProfile(user, data.query.blocks[0]); } ); else api.get( { action: 'query', list: 'users', ususers: username, usprop: ['groups', 'editcount', 'registration', 'blockinfo', 'emailable'], formatversion: 2 } ).done( function(data) { var user = data.query.users[0]; var block; if ( user.blockid ) block = { user: username, by: user.blockedby, timestamp: user.blockedtimestamp, expiry: user.blockexpiry, reason: user.blockreason }; formatProfile(user, block); } ); function formatProfile(user, block) { user.groups.splice(user.groups.indexOf('*'), 1); var text = '<div class="horse-userprofile-info">'; if ( user.groups.length ) { var groupList = user.groups.map( function(group) { var grouppage = '{{MediaWiki:grouppage-'+group+'}}'; return [ '{{#ifexist: '+grouppage+' | [['+grouppage+'|{{int:group-'+group+'}}]] | {{int:group-'+group+'}} }}', '{{#ifexist: '+grouppage+' | [['+grouppage+'|{{int:group-'+group+'-member|'+username+'}}]] | {{int:group-'+group+'-member|'+username+'}} }}' ]; } ).reduce( function(prev, cur) { prev[0].push(cur[0]); prev[1].push(cur[1]); return prev; }, [[], []] ); text += '\n\n<span>{{int:prefs-memberingroups|'+user.groups.length+'|'+username+'}}</span>\t<span>{{int:prefs-memberingroups-type|'+mw.language.listToText(groupList[0])+'|'+mw.language.listToText(groupList[1])+'}}</span>'; } text += '\n\n<span>{{int:prefs-edits}}</span>\t<span>[[Special:Contribs/'+username+'|'+mw.language.convertNumber(user.editcount)+']]</span>'; if ( user.registration ) { text += '\n\n<span>{{int:prefs-registration}}</span>\t<span>'+mw.language.convertNumber(new Date(user.registration).toLocaleString(lang, dateOptions))+'</span>'; if ( !user.emailable ) text += '\n\n<span>{{int:nowikiemailtext|'+username+'}}</span>'; } text += '\n\n</div>'; if ( block && mw.config.get('wgArticleId') !== 0 ) { var blockDate = new Date(block.timestamp); var blockexpiry = '{{int:infiniteblock}}'; if ( !['infinite', 'indefinite', 'infinity', 'never'].includes(block.expiry) ) { var expiry = new Date(block.expiry.replace( /(\d{4})(\d{2})(\d{2})(\d{2})(\d{2})(\d{2,3})/, '$1-$2-$3T$4:$5:$6Z' )); var duration = expiry - blockDate; var blockDuration = []; var factor = 1000; if ( duration % factor === 0 ) blockDuration = ['duration-seconds', Math.floor(duration / factor)]; factor *= 60; if ( duration % factor === 0 ) blockDuration = ['duration-minutes', Math.floor(duration / factor)]; factor *= 60; if ( duration % factor === 0 ) blockDuration = ['duration-hours', Math.floor(duration / factor)]; factor *= 24; if ( duration % factor === 0 ) blockDuration = ['duration-days', Math.floor(duration / factor)]; if ( duration % (factor*7) === 0 ) blockDuration = ['duration-weeks', Math.floor(duration / (factor*7))]; if ( duration % (factor*30) === 0 ) blockDuration = ['months', Math.floor(duration / (factor*30))]; factor *= 365; if ( duration % factor === 0 ) blockDuration = ['duration-years', Math.floor(duration / factor)]; if ( duration % (factor*10) === 0 ) blockDuration = ['duration-decades', Math.floor(duration / (factor*10))]; if ( duration % (factor*100) === 0 ) blockDuration = ['duration-centuries', Math.floor(duration / (factor*100))]; if ( duration % (factor*1000) === 0 ) blockDuration = ['duration-millennia', Math.floor(duration / (factor*1000))]; if ( blockDuration.length < 2 || blockDuration[1] > 1000 ) blockexpiry = mw.language.convertNumber(expiry.toLocaleString(lang, dateOptions)); else blockexpiry = '{{int:'+blockDuration.join('|')+'}}'; } text += '<div class="horse-userprofile-block mw-warning-with-logexcerpt"><div>\n{{int:blocked-notice-logextract|'+username+'}}\n'; text += '* '+mw.language.convertNumber(blockDate.toLocaleString(lang, dateOptions))+' {{int:logentry-block-block|[[User:'+block.by+'|'+block.by+']] <span class="mw-usertoollinks mw-changeslist-links"><span>[[User talk:'+block.by+'|{{int:talkpagelinktext}}]]</span> <span>[[Special:Contribs/'+block.by+'|{{int:contribslink}}]]</span></span>|'+block.by; if ( mw.util.isIPAddress(block.user, true) ) text += '|[[Special:Contribs/'+block.user+'|'+block.user+']] <span class="mw-usertoollinks mw-changeslist-links"><span>[[User talk:'+block.user+'|{{int:talkpagelinktext}}]]</span></span>'; else text += '|[[User:'+block.user+'|'+block.user+']] <span class="mw-usertoollinks mw-changeslist-links"><span>[[User talk:'+block.user+'|{{int:talkpagelinktext}}]]</span> <span>[[Special:Contribs/'+block.user+'|{{int:contribslink}}]]</span></span>'; text += '|'+block.user+'|'+blockexpiry+'|}} <span class="comment">{{int:parentheses|'+block.reason+'}}</span></div></div>'; } api.parse( text, { disablelimitreport: true, wrapoutputclass: 'horse-userprofile mw-message-box mw-content-'+($('#contentSub').attr('dir')||'ltr'), uselang: mw.config.get('wgUserLanguage') } ).done( function(parsedText) { $('#contentSub').append(parsedText.replace( /\u29FCgroup-([^\u29FC\u29FD]+?)(?:-member)?\u29FD/g, '$1' )); } ); } } } ); // </nowiki> 2df0d96710fe446c5289ea1c484419b50c43fd5b MediaWiki:Gadgets 8 8 9 2025-03-25T22:47:38Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki See also: [[Special:Gadgets]] for a list of all installed gadgets, formatted in a friendly way. {{Special:PrefixIndex/MediaWiki:Gadgets}} 14815d26ea4ae878b5e77e1781eeb35cd742ad2c MediaWiki:Gadgets-definition 8 9 10 2025-03-25T22:47:38Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki * userProfile[ResourceLoader|dependencies=mediawiki.api,jquery,mw.loader,mediawiki.util|default]|userProfile.js|userProfile.css 144e9bfb83e9d4d90710b549af7127cb0f790b78 MediaWiki:Gadgets/charInserts 8 10 11 2025-03-25T22:47:39Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [ "edit" ], "categories": [], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.js" ], "dependencies": [ "jquery" ], "type": "general" } } 518bbdc62f3fe767736f2de6ee9ba2b7eb9ab0a8 MediaWiki:Gadgets/charInserts/main.js 8 11 12 2025-03-25T22:47:40Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript $(function() { $('.mw-charinsert-item').each(function() { $(this).text($(this).closest('div').attr('data-ci-label')); $(this).css('display', 'inline-block'); }); $('.ci-loading-text').css('display','none'); }); daabc4b17b7729432f5c146630a0715a7abc13e9 MediaWiki:Gadgets/collapsibleSidebarSections 8 12 13 2025-03-25T22:47:41Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "appearance", "package": true, "default": false, "hidden": false, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.css", "main.js" ], "dependencies": [ "jquery" ], "type": "general" } } d67dc8fabaf4e1d275a3b17c42f3d707f00b707c MediaWiki:Gadgets/collapsibleSidebarSections/main.css 8 13 14 2025-03-25T22:47:42Z Mr Pie 5 2833 Adding default set of pages css text/css @media screen and (min-width:721px) { .client-js #mw-panel .vector-menu-portal .vector-menu-heading { cursor: pointer; display: flex; align-items: center; justify-content: space-between; } .client-js #mw-panel .vector-menu-portal .vector-menu-heading::after { content: ""; display: block; pointer-events: none; width: 14px; height: 14px; margin-top: 1px; /* offset */ --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-chevron-down' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M6 9l6 6l6 -6'%3E%3C/path%3E%3C/svg%3E") no-repeat; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-position: center center; mask-position: center center; background-color: var(--wiki-sidebar-link-color); transform: rotate(180deg); } .client-js #mw-panel .vector-menu-portal.collapsed .vector-menu-heading::after { transform: rotate(0deg); } .client-js #mw-panel .vector-menu-portal::after { transition:0.5s } .client-js #mw-panel .vector-menu-portal.collapsed::after { border-image-slice:22% 45%; transition:0.5s; } } fcc58f877118c1bd86e6d26c83270653e40f4e24 MediaWiki:Gadgets/collapsibleSidebarSections/main.js 8 14 15 2025-03-25T22:47:43Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript $(function(){ // CONFIG section, you can edit this part // a list of sections that should be collapsed by default for *all users*. // This should be the name of the heading as listed in Mediawiki:Sidebar and is case-sensitive. // For example, if you have '* Character_Classes' and you want that section collapsed, add 'Character_Classes' into the brackets below. // Separate entries with commas and use underscores instead of spaces. // Example list: ['Character_Classes', 'Items', 'External_Links'] // Please DO NOT add navigation or tb into this list, as they are expected functionality. var INITIALLY_COLLAPSED_IDS = []; var MIN_ACTIVATION_WIDTH = 721; //END CONFIG // add the p- onto ids for ease of use, if not present INITIALLY_COLLAPSED_IDS.forEach(function(id, index){ if(!id.startsWith('p-')){ INITIALLY_COLLAPSED_IDS[index] = 'p-' + id; } }); var $portals = $("#mw-panel .vector-menu-portal"); var setup = function(){ $portals.each(function(index, el){ if(window.innerWidth < MIN_ACTIVATION_WIDTH) { return; } var $el = $(el); var $id = $el.attr("id"); if(!$id){ return; } // check if this portal should be collapsed if( // portal is set to be initially collapsed and user has not indicated that they want it open (INITIALLY_COLLAPSED_IDS.includes($id) && localStorage.getItem('sidebar_c_'+$id) != "n") || // or // user has indicated they want this portal collapsed (localStorage.getItem('sidebar_c_'+$id) === "y") ){ $el.addClass('collapsed').find('.vector-menu-content').slideUp(0); } }); } setup(); $(window).on('resize', setup); $portals.on("click", "h3", function(event){ if(window.innerWidth < MIN_ACTIVATION_WIDTH) { return; } var $el = $(this).parent(); var $id = $el.attr("id"); if(!$id){ return; } $el.toggleClass('collapsed'); if($el.hasClass('collapsed')){ // more consistent between class and slide status. localStorage.setItem('sidebar_c_'+$id, "y"); $el.find('.vector-menu-content').slideUp('fast'); } else{ localStorage.setItem('sidebar_c_'+$id, "n"); $el.find('.vector-menu-content').slideDown('fast'); } }); }); 63d4425138f9c81e8294fbd01a08de9e1f58256a MediaWiki:Gadgets/discordTemplate 8 15 16 2025-03-25T22:47:44Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [ "Pages with Discord embeds" ], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.js" ], "dependencies": [ "jquery" ], "type": "general" } } 1232b7fbe2ff589295233393f6f387cf52793a2a MediaWiki:Gadgets/discordTemplate/main.js 8 16 17 2025-03-25T22:47:45Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript /** * DiscordCompact.js * ---------------------- * A very simple script to display a Discord widget. * Version 0.0.2 * https://support.wiki.gg/wiki/DiscordCompact * ---------------------- */ $(function() { var widget = $("#content #discord-compact-widget"); // Bail out if we didn't find a widget. if (!widget.length) return; var id = widget.attr("data-id"); // Ensure that the id is not blank. if (id === "") throw new Error("DiscordCompact has a blank server id!"); // Ensure that the id consists only of numbers and is at least 17 characters long. if (!new RegExp("^[0-9]{17}[0-9]+$").test(id)) throw new Error("DiscordCompact has an invalid server id!"); var apiBase = "https://discord.com/api/guilds/" + id; // Get some information about the server, such as online member count and invite url. // This also tells us if the server exists or has widgets disabled, so we look out for that too. $.ajax(apiBase + "/widget.json").fail(function(req){ if (!req.responseJSON) throw new Error("DiscordCompact encountered an unknown error whilst fetching widget.json (status: " + req.status); switch (req.responseJSON.code) { case 10004: throw new Error("DiscordCompact has a valid server id, but no such server exists!"); case 50004: throw new Error("DiscordCompact has a valid server id, but that server has widgets disabled!"); default: throw new Error("DiscordCompact encountered an unknown error whilst fetching widget.json (status: " + req.status + "; code: " + req.responseJSON.code + ")"); } }).done(function(res){ const inviteURL = res.instant_invite; // Warn if we can't get an invite URL. if (inviteURL == null) console.warn("DiscordCompact cannot get an invite URL; does this server have an invite channel set in Widget settings?"); // Now get the widget image. $.ajax({url: apiBase + "/widget.png?style=banner2", xhrFields: {responseType: "blob"}}).fail(function(req){ if (!req.responseJSON) throw new Error("DiscordCompact encountered an unknown error whilst fetching widget.png! (status: " + req.status); throw new Error("DiscordCompact encountered an unknown error whilst fetching widget.png! (status: " + req.status + "; code: " + req.responseJSON.code + ")"); }).done(function(blob){ // Convert the image data into base64. This prevents us having to make the client request it a second time. const imageReader = new FileReader(); imageReader.readAsDataURL(blob); imageReader.onloadend = function() { const b64Data = imageReader.result; // Replace the widget with an <a> tag widget.replaceWith(function() { return $("<a>", { id: widget.attr("id"), class: widget.attr("class"), style: widget.attr("style"), alt: "Discord server widget", href: inviteURL }); }); // We need to grab the widget again to update it. widget = $("#discord-compact-widget"); // Setup the CSS so that the image is displayed. widget.css("display", "block"); widget.css("max-height", "76px"); widget.css("max-width", "320px"); // Create the image. const widgetImage = document.createElement("img"); widgetImage.src = b64Data; widgetImage.style.width = "100%"; widgetImage.style.height = "100%"; widgetImage.style.borderRadius = "5px"; widget.append(widgetImage); // Prevent image dragging. widget.on("dragstart", function(e) { e.preventDefault(); }); // We're done here. console.log("DiscordCompact loaded successfully!"); } }); }); }); /** * based on https://dev.fandom.com/wiki/MediaWiki:DiscordIntegrator/code.js * * used by other wikis. */ $(function() { 'use strict'; var mconfig = mw.config.get([ 'wgContentLanguage', 'wgUserLanguage', 'wgUserName' ]); if (window.DiscordIntegratorLoaded) { return; } window.DiscordIntegratorLoaded = true; /** * Main object * @static */ var DiscordIntegrator = { /** * Initializing */ init: function() { mw.hook('wikipage.content').add($.proxy(this.insertToContent, this)); }, /** * Finding the designated places in content * in which to place the widget and placing it */ insertToContent: function($content) { $content.find('.DiscordIntegrator:not(.loaded)').each($.proxy(function(cabbage, el) { el = $(el); el.html(this.generateContent(el.data())).addClass('loaded'); }, this)); }, /** * Determines the theme of the widget. * @param {string} config Configured theme * @return {string} 'light' or 'dark' depending on the wiki theme and configuration */ determineTheme: function(config) { // If explicitly configured to light or dark. if (config === 'dark') { return 'dark'; } if (config === 'light') { return 'light'; } /** If not configured **/ // try to determine based on wiki theme (set by themeToggle): var clas = $(':root').attr('class'); var regex = /(^|\s)theme-(\w+)(\s|$)/; var match = clas.match(regex); if(match){ var wikiThemeName = match[2]; if(typeof(config) === 'object' && config !== null){ //with json theme config if(config[wikiThemeName]){ return config[wikiThemeName]; } } if(wikiThemeName === 'light'){ return 'light'; } if(wikiThemeName === 'dark'){ return 'dark'; } } // Otherwise, default to dark. return 'dark'; }, /** * Generating widget content from an object * @return {string} Content of the widget */ generateContent: function(config) { if (!config.id || !String(config.id).match(/\d{17,19}/)) { return "Error: ID of the widget is malformed or not supplied, please see <a href='https://support.wiki.gg/wiki/DiscordWidget' title='the instructions'>the instructions</a> for how to find your server's ID. Please make sure you are not inserting <strong>the DiscordIntegrator template</strong> when asked for <strong>your widget ID</strong>."; } if ( ( config.loggedIn === true || Boolean(config['logged-in']) === true && config['logged-in'] !== 'false' && config['logged-in'] !== '{{{loggedIn}}}' ) && !mconfig.wgUserName ) { return "Please <a href='/Special:UserLogin' title='log in'>log in</a> to see this widget."; } var username = config.username === '@disabled' ? '' : config.username === '@function' && typeof window.DiscordIntegratorGetUsername === 'function' ? window.DiscordIntegratorGetUsername() : config.username || mconfig.wgUserName; return mw.html.element('iframe', { src: 'https://discord.com/widget?id=' + config.id + '&theme=' + this.determineTheme(config.theme) + '&username=' + encodeURIComponent(username), width: config.width || '100%', height: config.height || '400px', allowtransparency: 'true', frameborder: '0', title: "Discord server widget" }); } }; DiscordIntegrator.init(); }); 1e1fd5704120cf67e15a757bd964c7295bdb464e MediaWiki:Gadgets/druid 8 17 18 2025-03-25T22:47:46Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "package": false, "section": "", "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [ "Pages with DRUID infoboxes" ], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "variablesEditMe.css", "mainReadonly.css", "customEditMe.css" ], "dependencies": [], "type": "styles" } } 5c21b27bf41aba17b090e0d888010c308bd5d0bb MediaWiki:Gadgets/druid/customEditMe.css 8 18 19 2025-03-25T22:47:47Z Mr Pie 5 2833 Adding default set of pages css text/css /* Custom DRUID styles should go here */ 7ecb3c635f03ba714e419c200113f47043f0e358 MediaWiki:Gadgets/druid/doc 8 19 20 2025-03-25T22:47:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>This gadget provides styles for {{ml|Infobox}}. You can customize: * [[MediaWiki:Gadgets/druid/variablesEditMe.css]] - to customize the built-in variables (e.g. if you want to make the color of your infobox not match the wiki accent color). This file will load '''first''' out of all of the DRUID CSS files. * [[MediaWiki:Gadgets/druid/customEditMe.css]] - to otherwise customize DRUID (e.g. if you want to change the padding, or add a border image, something that's not supported through variables. This file will load '''last''' out of all of the DRUID CSS files, so all rules here will overwrite rules in [[MediaWiki:Gadgets/druid/mainReadonly.css]] with equal specificity. Please do NOT modify [[MediaWiki:Gadgets/druid/mainReadonly.css]]!! That page may be updated by wiki.gg staff via script, and the updates will not function if you modify it. More documentation can be found at [[support:DRUID infoboxes|DRUID infoboxes]]<!-- --></includeonly><noinclude>This is the documentation page for [[{{#titleparts:{{FULLPAGENAME}}|-1}}]].</noinclude> 2813eb77787e37161b0ed7e4e85c9f5f2d7ad92e MediaWiki:Gadgets/druid/mainReadonly.css 8 20 21 2025-03-25T22:47:49Z Mr Pie 5 2833 Adding default set of pages css text/css /* --------------------------------------------- */ /* Do not edit this file please */ /* You can edit variablesEditMe and customEditMe */ /* --------------------------------------------- */ .druid-container { border: 4px solid var(--druid-border-color); border-radius: 3px; background: var(--druid-background-color); float: right; clear: right; margin: 0 0 1em 1em; width:100%; max-width:22em; box-sizing: border-box; border-collapse: collapse; } @media screen and (max-width: 720px) { .druid-container { float: none; margin: 0.5rem auto; } } .druid-main-images-file, .druid-main-image { text-align:center; } .druid-infobox .druid-title, .druid-infobox .druid-section { background:var(--druid-secondary-background-color); /* fallback */ background:color-mix(in srgb, var(--druid-secondary-background-color) 75%, transparent); color:var(--druid-secondary-background-label-color); text-align:center; font-size:1.5em; padding:1px; } .druid-infobox .druid-section { font-size: 1.25em; font-weight: 500; } .druid-infobox .druid-collapsible .druid-section { flex-grow: 1; } .druid-label { font-weight:bold; text-align: right; box-sizing: border-box; } .druid-row > .druid-label { width: 48%; flex-shrink: 0; } .druid-row > .druid-label, .druid-row > .druid-data { padding-inline: 0.3em; } .druid-main-image, .druid-main-images { padding:5px; } .druid-main-image img, .druid-main-images img { max-width:100%; height:auto; } .druid-main-images-labels { display:flex; flex-direction:row; flex-wrap:wrap; justify-content: space-evenly; margin:0.25em; gap:0.25em; } .druid-main-images-label { cursor:pointer; flex:1 1 auto; text-align:center; transition:.1s ease-in; outline:1px solid var(--druid-link-color); } .druid-main-images-label.focused { background:var(--druid-link-color); color:var(--druid-link-label-color); } .druid-main-images-label:not(.focused):hover { background:var(--druid-link-color); /* fallback */ background:color-mix(in srgb, var(--druid-link-color) 25%, transparent); } .druid-toggleable-data:not(.focused), .druid-main-images-file:not(.focused), .druid-toggleable-heading:not(.focused) { display:none; } .druid-row:not(:has(.druid-grid)):has(.druid-toggleable-data-empty.focused) { display:none; } .druid-section:has(.druid-toggleable-heading-empty.focused) { display:none; } .druid-grid { display:grid; gap: 0.3em; padding: 0.35em; } .druid-grid-item { background:var(--druid-tertiary-background-color); padding:0.25em; border:1px solid var(--druid-border-color); /* fallback */ border:1px solid color-mix(in srgb, var(--druid-border-color) 50%, transparent); border-radius: 2px; } .druid-grid-item .druid-label, .druid-grid-item .druid-data { text-align: center; } .druid-data-wide { width:100%; } .druid-section-container > .druid-collapsible { display: flex; justify-content: space-between; align-items: center; } .druid-collapsed { display:none!important; } .druid-collapsible { cursor:pointer; position:relative; } .druid-collapsible::after { content: ""; display: block; position: absolute; right: 10px; width: 20px; height: 20px; --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E collapse %3C/title%3E%3Cpath d='M1 13.75l1.5 1.5 7.5-7.5 7.5 7.5 1.5-1.5-9-9-9 9z'/%3E%3C/svg%3E") no-repeat; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-position: center center; mask-position: center center; background-color: var(--druid-secondary-background-label-color); } .druid-collapsible-collapsed::after { transform: rotate(180deg); } .druid-section-container:has(.druid-toggleable-data-empty.focused):not(:has(.druid-toggleable-data-nonempty.focused)):not(:has(.druid-data-nonempty)) { display: none; } /***************************************** Div support *****************************************/ div.druid-row { display:flex; margin-block: 1px; } div.druid-row + div.druid-row { margin-top: 0; } div.druid-row > .druid-label { background: var(--druid-tertiary-background-color); } .druid-infobox .druid-title { font-weight: 700; } .druid-infobox #toc { display:none; } /******** Custom display classes *********/ div.druid-stacked.druid-row, .druid-stacked div.druid-row { flex-direction: column; } .druid-stacked.druid-row > .druid-label, .druid-stacked .druid-row > .druid-label { text-align: left; width: 100%; flex-basis:unset; } .druid-stacked.druid-row > .druid-data, .druid-stacked .druid-row > .druid-data { padding-left: .75em; } /* --------------------------------------------- */ /* Do not edit this file please */ /* You can edit variablesEditMe and customEditMe */ /* --------------------------------------------- */ c43cc0f0e37f1be790c96da24cfc86e3ef2dfe8f MediaWiki:Gadgets/druid/variablesEditMe.css 8 21 22 2025-03-25T22:47:50Z Mr Pie 5 2833 Adding default set of pages css text/css /* These variables are designed to inherit from your wiki's color variables. If your wiki uses a different naming scheme, change the inner names to match yours. If your wiki doesn't use color variables you should consider doing so, otherwise you can replace the inner variables or the fallback values with colors that match your wiki. */ /* Light and dark are separated to make it easier for you to do local customizations but in the default version they are identical */ :root, .view-light .druid-container { --druid-background-color: var(--wiki-content-background-color, #ffffff); --druid-secondary-background-color: var(--wiki-accent-color, #36c); --druid-secondary-background-label-color: var(--wiki-accent-label-color, #fff); --druid-tertiary-background-color: var(--wiki-content-background-color--secondary, #eaecf0); --druid-border-color: var(--wiki-content-border-color, #a7d7f9); --druid-link-color: var(--wiki-content-link-color, #0645ad); --druid-link-label-color: var(--wiki-content-link-label-color, #fff); } .view-dark .druid-container { --druid-background-color: var(--wiki-content-background-color, #ffffff); --druid-secondary-background-color: var(--wiki-accent-color, #36c); --druid-secondary-background-label-color: var(--wiki-accent-label-color, #fff); --druid-tertiary-background-color: var(--wiki-content-background-color--secondary, #eaecf0); --druid-border-color: var(--wiki-content-border-color, #a7d7f9); --druid-link-color: var(--wiki-content-link-color, #0645ad); --druid-link-label-color: var(--wiki-content-link-label-color, #fff); } 8cf88860d6782aac5b9b65a990d7eddfd5c5c3f2 MediaWiki:Gadgets/druidScripts 8 22 23 2025-03-25T22:47:51Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [ "Pages with DRUID infoboxes" ], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.js" ], "dependencies": [ "jquery" ], "type": "general" } } 5df47905f5c565c4a5c0da774413a6dee76eb7d1 MediaWiki:Gadgets/druidScripts/main.js 8 23 24 2025-03-25T22:47:52Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript mw.hook( 'wikipage.content' ).add( () => { $( '.druid-title-tab' ).off( 'click' ) .on( 'click', function () { const $parent = $( this ).closest( '.druid-container' ); $parent.find( '.druid-toggleable' ).removeClass( 'focused' ); const i = $( this ).attr( 'data-druid' ); $parent.find( `.druid-toggleable[data-druid="${i}"]` ).addClass( 'focused' ); } ); $( '.druid-section-tab' ).off( 'click' ) .on( 'click', function () { const $parent = $( this ).closest( '.druid-section-container' ); $parent.find( '.druid-toggleable' ).removeClass( 'focused' ); const i = $( this ).attr( 'data-druid' ); $parent.find( `.druid-toggleable[data-druid="${i}"]` ).addClass( 'focused' ); } ); $( '.druid-collapsible' ).off( 'click' ) .on( 'click', function () { const kind = $( this ).attr( 'data-druid-section' ); $( this ) .toggleClass( 'druid-collapsible-collapsed' ) .closest( '.druid-container' ) .find( `[data-druid-section-row="${kind}"]` ) .toggleClass( 'druid-collapsed' ); } ); } ); /* End DRUID */ af8f73fc414f3fc0dae8d97a044675e9912fa457 MediaWiki:Gadgets/hoverShowSpoilers 8 24 25 2025-03-25T22:47:53Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": false, "default": false, "hidden": false, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.css" ], "dependencies": [], "type": "styles" } } e110b26ef7e015e5579a5eb41f366be7e37da34b MediaWiki:Gadgets/hoverShowSpoilers/main.css 8 25 26 2025-03-25T22:47:54Z Mr Pie 5 2833 Adding default set of pages css text/css .spoiler-content:hover > * { pointer-events:unset; opacity: 1; } .spoiler-content:hover { background-color: transparent; } 1c73aafcb749d7e0e9107c1045310d2af70aae7e MediaWiki:Gadgets/luaImportLinks 8 26 27 2025-03-25T22:47:55Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [ 828 ], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.js" ], "dependencies": [ "jquery" ], "type": "general" } } e5843d78effc2d04aa1fde18970885a1845ae525 MediaWiki:Gadgets/luaImportLinks/main.js 8 27 28 2025-03-25T22:47:56Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript /* Link to imported modules from Lua code */ $(function() { var config = mw.config.get([ 'wgCanonicalNamespace', 'wgFormattedNamespaces' ]); if (config.wgCanonicalNamespace !== 'Module') { return; } var localizedNamespace = config.wgFormattedNamespaces[828]; $('.s1, .s2, .s').each(function() { var $this = $(this); var html = $this.html(); var quote = html[0]; var isLongStringQuote = quote === '['; var quoteRE = new RegExp('^\\' + quote + '|\\' + quote + '$', 'g'); if (isLongStringQuote) { quoteRE = /^\[\[|\]\]$/g; } var name = html.replace(quoteRE, ''); var isEnglishPrefix = name.startsWith('Module:'); var isLocalizedPrefix = name.startsWith(localizedNamespace + ':'); var isDevPrefix = name.startsWith('Dev:'); if (isEnglishPrefix || isLocalizedPrefix || isDevPrefix) { var attrs = { href: mw.util.getUrl(name) }; if (isDevPrefix) { attrs.href = 'https://commons.wiki.gg/wiki/Module:' + mw.util.wikiUrlencode(name.replace('Dev:', '')); attrs.target = '_blank'; attrs.rel = 'noopener'; } var link = mw.html.element('a', attrs, name); var str = quote + link + quote; if (isLongStringQuote) { str = '[[' + link + ']]'; } $this.html(str); } }); }); dc09796545586723653a906ae1fed87411f49536 MediaWiki:Gadgets/mpEditLinks 8 28 29 2025-03-25T22:47:57Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": false, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [], "contentModels": [], "rights": [ "editprotected" ] }, "module": { "pages": [ "main.css", "main.js" ], "dependencies": [ "jquery", "mediawiki.util" ], "type": "general" } } 896c95a05c8010f4e27f4ae9b4ceff0ac857e576 MediaWiki:Gadgets/mpEditLinks/main.css 8 29 30 2025-03-25T22:47:58Z Mr Pie 5 2833 Adding default set of pages css text/css .mp-edit-link { display:block; position:absolute; right:0.5em; top:0.5em; background:var(--wiki-content-background-color); } .mp-edit-link a { display:block; padding:0.1em; border:1px solid var(--wiki-content-link-color); } .mp-edit-link a::before { display:inline-block; content:''; background-image:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E edit %3C/title%3E%3Cpath d=%22m16.77 8 1.94-2a1 1 0 0 0 0-1.41l-3.34-3.3a1 1 0 0 0-1.41 0L12 3.23zM1 14.25V19h4.75l9.96-9.96-4.75-4.75z%22/%3E%3C/svg%3E"); background-size:contain; width:1em; height:1em; filter:var(--wiki-icon-to-link-filter); vertical-align:text-top; margin-right:0.2em; } b1c240c635d5c7207d35f958031d9eace6324795 MediaWiki:Gadgets/mpEditLinks/main.js 8 30 31 2025-03-25T22:47:59Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript $( function () { if(!document.getElementById('mp-container')) return; var rootpage = document.getElementById('mp-container').dataset['rootpage']; // Get the rootpage passed from the main page module, so we don't need to make an API call /* generate the links here instead of in the wikitext, so that users who can't see them don't have them * in the DOM at all, and screenreaders and search engines don't get confused */ function createLinks(){ $('.mp-box').each(function(_, el){ var params = '?action=edit'; // only add the long preload stuff if the box doesn't exist, for prettier urls if ( $(el).hasClass('missing') ){ params += '&preload=Template:Main page box/preload&preloadparams[0]=' + el.dataset['boxId'].charAt(0).toUpperCase() + el.dataset['boxId'].slice(1); /* preloadparam is box id with first letter capitalized */ } $('<a></a>', { href: mw.util.getUrl(rootpage + '/' + el.dataset['boxId']) + params, text: 'Edit ' + rootpage + '/' + el.dataset['boxId'] }).appendTo( $('<div></div>', { class: 'mp-edit-link' }).prependTo(el) ); }); } function toggleLinks(){ $('.mp-edit-link').each(function(_, el){ $(el).toggle().css('display none;'); }); } $('<span></span>', { text: 'Toggle edit buttons', class: 'mp-edit-toggle', on: {click: toggleLinks}, }).appendTo($('#top')); createLinks(); }); 80b135c05947f6acbb039d454cd147aa67999d3a MediaWiki:Gadgets/purge 8 31 32 2025-03-25T22:48:01Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": false, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [], "contentModels": [], "rights": [ "edit" ] }, "module": { "pages": [ "main.js" ], "dependencies": [ "mediawiki.util", "mediawiki.api" ], "type": "general" } } af2694fd57147735a6bfbca7f9d483ff0dff31c6 MediaWiki:Gadgets/purge/main.js 8 32 33 2025-03-25T22:48:02Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript (function() { if ( document.getElementById( 'ca-cargo-purge' )){ return } // disable if Cargo has already added a purge button if ( mw.config.get( 'wgNamespaceNumber' ) === -1 ) { return } // disable on special pages var l10n = (function(){ var text = { 'buttonlabel': { 'en': 'Purge cache', 'de': 'Aktualisieren', 'fr': 'Purger', 'ru': 'Обновить', 'pt': 'Actualizar', 'pt-br': 'Actualizar', }, 'hovertext': { 'en': 'Purge the server cache for this page', 'de': 'Den Server-Cache dieser Seite löschen', 'fr': 'Purge le cache du serveur de cette page', 'ru': 'Очистить кэш сервера на этой странице', 'pt': 'Limpe o cache do servidor para esta página', 'pt-br': 'Limpe o cache do servidor para esta página', }, 'errortext': { 'en': 'Failed to purge the page! Error code: $1' } } var lang = mw.config.get( 'wgUserLanguage' ) || 'en'; return function(key){ return text[key] && (text[key][lang] || text[key]['en']) || ''; } })(); var url = new URL(window.location.href); url.searchParams.set('action', 'purge'); var button = mw.util.addPortletLink('p-cactions', url.href, l10n('buttonlabel'), 'ca-gadget-purgecache', l10n('hovertext'), '1'); button.addEventListener('click', (function(event) { event.preventDefault(); var api = new mw.Api(); api.post({ action: 'purge', titles: mw.config.get('wgPageName'), forcerecursivelinkupdate: true }).then(function() { window.location.reload(true); }).fail(function(code) { mw.notify(l10n('errortext').replace('$1', code)); }); })); console.log('purge loaded'); })(); 6e5bbcc0a70b1d962c5b9376272ddbe79443d8fc MediaWiki:Gadgets/ranger 8 33 34 2025-03-25T22:48:03Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": false, "default": true, "hidden": false, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [ "Pages with navboxes" ], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "variables.css", "main.css", "custom.css" ], "dependencies": [], "type": "styles" } } 02a05063770275f77c6a7df46cfecee5acb7f740 MediaWiki:Gadgets/ranger/custom.css 8 34 35 2025-03-25T22:48:04Z Mr Pie 5 2833 Adding default set of pages css text/css /* Custom RANGER styles can go here. Rules here will override rules of equal specificity in main.css */ 769d3248cef93d2b58dcf7339da923494f5173f8 MediaWiki:Gadgets/ranger/main.css 8 35 36 2025-03-25T22:48:05Z Mr Pie 5 2833 Adding default set of pages css text/css /** as of Module:navbox version 1.2.2 **/ .ranger-navbox{ border-color: var(--navbox-outer-border-color); border-style: var(--navbox-outer-border-style); border-width: var(--navbox-outer-border-width); border-radius: var(--navbox-outer-border-radius); padding: var(--navbox-padding); font-size: var(--navbox-font-size); margin: var(--navbox-margin); background: var(--navbox-background); line-height: 1.5; clear:both; } .ranger-navbox * { border: 0; } .ranger-navbox .center *{ margin-left: unset; margin-right: unset; } .ranger-navbox, .ranger-navbox .ranger-section, .ranger-navbox .ranger-listbox{ display: flex; flex-direction: column; gap: var(--navbox-gap); } .ranger-navbox .ranger-title, .ranger-navbox .ranger-header{ text-align: center; min-height: 1.5em; position: relative; z-index: 0; font-weight: bold; } .ranger-navbox .ranger-title{ color: var(--navbox-title-color); background: var(--navbox-title-background); font-size: var(--navbox-title-font-size); padding: var(--navbox-title-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */ } .ranger-navbox .ranger-title a, .ranger-navbox .ranger-title a:visited, .ranger-navbox .ranger-title a:hover, .ranger-navbox .ranger-title a.external, .ranger-navbox .ranger-title a.external:visited, .ranger-navbox .ranger-title a.external:hover { text-decoration: var(--navbox-title-link-decoration); } .ranger-navbox .ranger-title a.new, .ranger-navbox .ranger-title a.new:visited { text-decoration: var(--navbox-title-redlink-decoration); } .ranger-navbox .ranger-title a, .ranger-navbox .ranger-title a.external, .ranger-navbox .ranger-title a.external:visited { color: var(--navbox-title-link-color); } .ranger-navbox .ranger-title a:visited{ color: var(--navbox-title-link-color--visited); } .ranger-navbox .ranger-title a.new, .ranger-navbox .ranger-title a.new:visited{ color:var(--navbox-title-redlink-color); } .ranger-navbox .ranger-title a:hover, .ranger-navbox .ranger-title a:visited:hover, .ranger-navbox .ranger-title a.external:hover, .ranger-navbox .ranger-title a.external:visited:hover { color:var(--navbox-title-link-color--hover); } .ranger-navbox .ranger-header{ color: var(--navbox-header-color); background: var(--navbox-header-background); font-size: var(--navbox-header-font-size); padding: var(--navbox-header-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */ } .ranger-navbox .ranger-sublist .ranger-header{ font-size: var(--navbox-subheader-font-size); padding: var(--navbox-subheader-padding--y) calc(1.5em + var(--navbox-icon-offset--x)); /* left and right padding equal to the size and position of the edit/collapse buttons */ } .ranger-navbox .ranger-header a, .ranger-navbox .ranger-header a:visited, .ranger-navbox .ranger-header a:hover, .ranger-navbox .ranger-header a.external, .ranger-navbox .ranger-header a.external:visited, .ranger-navbox .ranger-header a.external:hover { text-decoration: var(--navbox-header-link-decoration); } .ranger-navbox .ranger-header a.new, .ranger-navbox .ranger-header a.new:visited { text-decoration: var(--navbox-header-redlink-decoration); } .ranger-navbox .ranger-header a, .ranger-navbox .ranger-header a.external, .ranger-navbox .ranger-header a.external:visited { color: var(--navbox-header-link-color); } .ranger-navbox .ranger-header a:visited{ color: var(--navbox-header-link-color--visited); } .ranger-navbox .ranger-header a.new, .ranger-navbox .ranger-header a.new:visited{ color:var(--navbox-header-redlink-color); } .ranger-navbox .ranger-header a:hover, .ranger-navbox .ranger-header a:visited:hover, .ranger-navbox .ranger-header a.external:hover, .ranger-navbox .ranger-header a.external:visited:hover { color:var(--navbox-header-link-color--hover); } .ranger-navbox .ranger-meta{ font-size: var(--navbox-title-font-size); position: absolute; left: var(--navbox-icon-offset--x); top: calc(var(--navbox-title-padding--y) + 0.08em); /* 0.08em: vertial offset tweak based on the icon graph */ display: block; } .ranger-navbox .ranger-meta .nv{ --mask: var(--icon-metalinks); display: block; width: 0.84em; /* based on the icon graph */ height: 0.84em; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-position: center center; mask-position: center center; background-color: var(--navbox-title-icon-color); } .ranger-navbox .ranger-meta .nv > a{ display: block; width: 100%; height: 100%; opacity: 0; } .ranger-navbox .ranger-meta .nv > a > span{ display: block; width: 100%; height: 100%; overflow: hidden; } .ranger-navbox .ranger-meta:has(.mw-selflink){ display: none; } .ranger-navbox, .ranger-navbox .ranger-section{ position: relative; } .ranger .mw-collapsible-toggle-placeholder{ display: none; } .ranger-navbox .ranger-title > .ranger-title-text, .ranger-navbox .ranger-header > .ranger-header-text{ pointer-events: none; } .ranger-navbox .ranger-title > .ranger-title-text a, .ranger-navbox .ranger-header > .ranger-header-text a{ pointer-events: auto; } .ranger-navbox .ranger-title > .mw-collapsible-toggle, .ranger-navbox .ranger-header > .mw-collapsible-toggle{ --mask: var(--icon-chevron-down); position: absolute; right: 0; top: 0; z-index: -1; display: block; width: 100%; height: 100%; overflow:hidden; } .ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle, .ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle{ width: 1.5em; height: 1.5em; right: var(--navbox-icon-offset--x); } .ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle{ top: var(--navbox-title-padding--y); } .ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle{ top: var(--navbox-header-padding--y); } .ranger-navbox.small-collapsible-toggle-click-area .ranger-sublist .ranger-header > .mw-collapsible-toggle{ top: var(--navbox-subheader-padding--y); } .ranger-navbox .ranger-title > .mw-collapsible-toggle::before, .ranger-navbox .ranger-header > .mw-collapsible-toggle::before{ content: ""; display: block; width: 1.5em; height: 1.5em; position: absolute; right: var(--navbox-icon-offset--x); -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-position: center center; mask-position: center center; background-color: var(--navbox-title-icon-color); transform: scaleY(-1); } .ranger-navbox .ranger-title > .mw-collapsible-toggle::before{ top: var(--navbox-title-padding--y); } .ranger-navbox .ranger-header > .mw-collapsible-toggle::before{ top: var(--navbox-header-padding--y); } .ranger-navbox .ranger-sublist .ranger-header > .mw-collapsible-toggle::before{ top: var(--navbox-subheader-padding--y); } .ranger-navbox.small-collapsible-toggle-click-area .ranger-title > .mw-collapsible-toggle::before, .ranger-navbox.small-collapsible-toggle-click-area .ranger-header > .mw-collapsible-toggle::before{ top: 0; right: 0; } .ranger-navbox .ranger-header > .mw-collapsible-toggle::before{ background-color: var(--navbox-header-icon-color); } .ranger-navbox .ranger-title > .mw-collapsible-toggle.mw-collapsible-toggle-collapsed::before, .ranger-navbox .ranger-header > .mw-collapsible-toggle.mw-collapsible-toggle-collapsed::before{ transform: none; } .ranger-navbox .ranger-title > .mw-collapsible-toggle *, .ranger-navbox .ranger-title > .mw-collapsible-toggle::after, .ranger-navbox .ranger-header > .mw-collapsible-toggle *, .ranger-navbox .ranger-header > .mw-collapsible-toggle::after{ display: none; } .ranger-navbox .ranger-list{ width: unset; padding: var(--navbox-list-padding); } .ranger-navbox .ranger-above{ background: var(--navbox-above-background); color: var(--navbox-above-color); padding: var(--navbox-above-padding); width: unset; } .ranger-navbox .ranger-below{ background: var(--navbox-below-background); color: var(--navbox-below-color); padding: var(--navbox-below-padding); width: unset; } .ranger-navbox .ranger-sublist{ display: flex; flex-direction: column; gap: var(--navbox-gap); } .ranger-navbox .ranger-section-body{ display: grid; gap: var(--navbox-gap); grid-template-columns: auto minmax(0,1fr); } .ranger-navbox .ranger-row{ display: contents; } .ranger-navbox .ranger-group, .ranger-navbox .ranger-subgroup{ text-align: var(--navbox-group-text-align); white-space: nowrap; font-weight: bold; background: var(--navbox-group-background); color: var(--navbox-group-color); padding: var(--navbox-group-padding); width: unset; } /* for desktop view */ .ranger-navbox.group-align-left .ranger-group, .ranger-navbox.group-align-left .ranger-subgroup{ --navbox-group-text-align: left; } .ranger-navbox.group-align-center .ranger-group, .ranger-navbox.group-align-center .ranger-subgroup{ --navbox-group-text-align: center; } .ranger-navbox.group-align-right .ranger-group, .ranger-navbox.group-align-right .ranger-subgroup{ --navbox-group-text-align: right; } /* for mobile view */ .ranger-navbox.mobile-group-align-left .ranger-group, .ranger-navbox.mobile-group-align-left .ranger-subgroup{ --navbox-group-text-align--mobile: left; } .ranger-navbox.mobile-group-align-center .ranger-group, .ranger-navbox.mobile-group-align-center .ranger-subgroup{ --navbox-group-text-align--mobile: center; } .ranger-navbox.mobile-group-align-right .ranger-group, .ranger-navbox.mobile-group-align-right .ranger-subgroup{ --navbox-group-text-align--mobile: right; } .ranger-navbox .ranger-listbox > .ranger-wrap{ background: var(--navbox-list-background); color: var(--navbox-list-color); flex-grow: 1; } .ranger-navbox .ranger-sublist{ flex-grow: var(--count); } .ranger-navbox .ranger-listbox:first-child{ /* A list-n without group-n */ grid-column-end: span 2; } .ranger-navbox .ranger-group, .ranger-navbox .ranger-subgroup, .ranger-navbox .ranger-listbox > .ranger-wrap{ display: grid; justify-items: stretch; align-items: center; } .ranger-navbox.striped-even .ranger-even, .ranger-navbox.striped-odd .ranger-odd{ background: var(--navbox-list-background--striped); } /* make links use full line height (larger click box)*/ .ranger-navbox .hlist a{ display: inline-block; } .ranger-navbox .align-left, .ranger-navbox .alignleft{ text-align: left; } .ranger-navbox .align-center, .ranger-navbox .aligncenter{ text-align: center; } .ranger-navbox .align-right, .ranger-navbox .alignright{ text-align: right; } /* responsive */ @media screen and (max-width: 720px) { .ranger-navbox .ranger-section-body, .ranger-navbox .ranger-sublist { display: flex; flex-flow: column; } .ranger-navbox .ranger-row{ display: block; } .ranger-navbox .ranger-group + .ranger-listbox > .ranger-sublist:first-child, .ranger-navbox .ranger-subgroup + .ranger-listbox > .ranger-sublist:first-child{ margin-top: var(--navbox-gap); } .ranger-navbox .ranger-listbox.empty{ display: none; } .ranger-navbox .ranger-group, .ranger-navbox .ranger-subgroup{ text-align: var(--navbox-group-text-align--mobile); white-space: normal; } .ranger-navbox .ranger-sublist { padding-left: var(--navbox-tree-indent); margin-left: var(--navbox-tree-line-indent); } .ranger-navbox .ranger-subgroup, .ranger-navbox .ranger-listbox { position:relative; } .ranger-navbox .ranger-group br, .ranger-navbox .ranger-subgroup br{ display: none; } .ranger-navbox .ranger-sublist > .ranger-section > .ranger-header{ margin-left: calc( 0px - var(--navbox-tree-indent) - var(--navbox-tree-line-indent)); } .ranger-navbox .ranger-sublist .ranger-row > ::before{ position: absolute; left: calc(0px - var(--navbox-tree-indent)); top: 0; width: var(--navbox-tree-line-width); height: 100%; content: ''; display: block; background-color: var(--navbox-tree-line-color); } .ranger-navbox .ranger-sublist .ranger-row > .ranger-listbox::before, .ranger-navbox .ranger-row.empty-list > .ranger-subgroup::before{ height: calc(100% + var(--navbox-gap)); } .ranger-navbox .ranger-sublist .ranger-row:last-child > ::before { display: none; } .ranger-navbox .ranger-sublist .ranger-row:last-child > :first-child::before { display: block; height: calc(50% + var(--navbox-tree-line-width)/2); } .ranger-navbox .ranger-subgroup::after, .ranger-navbox .empty-group > .ranger-listbox > .ranger-wrap::after{ position: absolute; left: calc(0px - var(--navbox-tree-indent) + var(--navbox-tree-line-width)); width: calc(var(--navbox-tree-indent) - var(--navbox-tree-line-spacing) - var(--navbox-tree-line-width)); height: var(--navbox-tree-line-width); content: ''; background-color: var(--navbox-tree-line-color); } /* increase height for links */ .ranger-navbox .hlist{ line-height: 2; } } /**** `.pill` class: the "pill" style ****/ /* remove middle dots betweem items */ .ranger-navbox.pill .hlist dd:not(:last-child)::after, .ranger-navbox.pill .hlist li:not(:last-child)::after{ display: none; } /* remove parentheses around nested lists*/ .ranger-navbox.pill .hlist dd ol::before, .ranger-navbox.pill .hlist dd ul::before, .ranger-navbox.pill .hlist dd dl::before, .ranger-navbox.pill .hlist dt ol::before, .ranger-navbox.pill .hlist dt ul::before, .ranger-navbox.pill .hlist dt dl::before, .ranger-navbox.pill .hlist li ol::before, .ranger-navbox.pill .hlist li ul::before, .ranger-navbox.pill .hlist li dl::before, .ranger-navbox.pill .hlist dd ol::after, .ranger-navbox.pill .hlist dd ul::after, .ranger-navbox.pill .hlist dd dl::after, .ranger-navbox.pill .hlist dt ol::after, .ranger-navbox.pill .hlist dt ul::after, .ranger-navbox.pill .hlist dt dl::after, .ranger-navbox.pill .hlist li ol::after, .ranger-navbox.pill .hlist li ul::after, .ranger-navbox.pill .hlist li dl::after { display: none; } /* make lists inline-flex */ .ranger-navbox.pill .hlist ul, .ranger-navbox.pill .hlist ol, .ranger-navbox.pill .hlist dl{ display: inline-flex; gap: var(--navbox-pill-gap); flex-wrap: wrap; } /* "pill" style for items */ .ranger-navbox.pill .hlist li, .ranger-navbox.pill .hlist dt, .ranger-navbox.pill .hlist dd{ padding: var(--navbox-pill-padding); border-radius: var(--navbox-pill-border-radius); box-shadow: var(--navbox-pill-box-shadow); background: var(--navbox-pill-background); /* 100% height */ display: flex; align-items: center; /* for nested lists */ gap: var(--navbox-pill-gap); flex-wrap: wrap; } /* Add a hover / focus feedback style */ .ranger-navbox.pill .hlist dd:hover, .ranger-navbox.pill .hlist dd:focus, .ranger-navbox.pill .hlist dt:hover, .ranger-navbox.pill .hlist dt:focus, .ranger-navbox.pill .hlist li:hover, .ranger-navbox.pill .hlist li:focus { box-shadow: var(--navbox-pill-box-shadow--hover); background: var(--navbox-pill-background--hover); } /* pill with selflink * * Only select the deepest level for nested lists. * We have to use :has() to pick pills with selflink and * all browsers which support :has() should also support :is() and :not(), * therefore we can use :is() and :not() here safely. */ .ranger-navbox.pill .hlist .ranger-list :is(li,dt,dd):has(.mw-selflink):not(:has(li, dt, dd)){ background: var(--navbox-pill-selflink-background); } /**** `.pill-mobile` class: only apply the "pill" style on mobile ****/ @media screen and (max-width: 720px) { /* remove middle dots betweem items */ .ranger-navbox.pill-mobile .hlist dd:not(:last-child)::after, .ranger-navbox.pill-mobile .hlist li:not(:last-child)::after{ display: none; } /* remove parentheses around nested lists*/ .ranger-navbox.pill-mobile .hlist dd ol::before, .ranger-navbox.pill-mobile .hlist dd ul::before, .ranger-navbox.pill-mobile .hlist dd dl::before, .ranger-navbox.pill-mobile .hlist dt ol::before, .ranger-navbox.pill-mobile .hlist dt ul::before, .ranger-navbox.pill-mobile .hlist dt dl::before, .ranger-navbox.pill-mobile .hlist li ol::before, .ranger-navbox.pill-mobile .hlist li ul::before, .ranger-navbox.pill-mobile .hlist li dl::before, .ranger-navbox.pill-mobile .hlist dd ol::after, .ranger-navbox.pill-mobile .hlist dd ul::after, .ranger-navbox.pill-mobile .hlist dd dl::after, .ranger-navbox.pill-mobile .hlist dt ol::after, .ranger-navbox.pill-mobile .hlist dt ul::after, .ranger-navbox.pill-mobile .hlist dt dl::after, .ranger-navbox.pill-mobile .hlist li ol::after, .ranger-navbox.pill-mobile .hlist li ul::after, .ranger-navbox.pill-mobile .hlist li dl::after { display: none; } /* make lists inline-flex */ .ranger-navbox.pill-mobile .hlist ul, .ranger-navbox.pill-mobile .hlist ol, .ranger-navbox.pill-mobile .hlist dl{ display: inline-flex; gap: var(--navbox-pill-gap); flex-wrap: wrap; } /* "pill" style for items */ .ranger-navbox.pill-mobile .hlist li, .ranger-navbox.pill-mobile .hlist dt, .ranger-navbox.pill-mobile .hlist dd{ /* 100% height */ display: flex; align-items: center; /* for nested lists */ gap: var(--navbox-pill-gap); flex-wrap: wrap; } /* "pill" style for items */ .ranger-navbox.pill-mobile .hlist li, .ranger-navbox.pill-mobile .hlist dt, .ranger-navbox.pill-mobile .hlist dd{ padding: var(--navbox-pill-padding); border-radius: var(--navbox-pill-border-radius); box-shadow: var(--navbox-pill-box-shadow); background: var(--navbox-pill-background); /* 100% height */ display: flex; align-items: center; /* for nested lists */ gap: var(--navbox-pill-gap); flex-wrap: wrap; } /* Add a hover / focus feedback style */ .ranger-navbox.pill-mobile .hlist dd:hover, .ranger-navbox.pill-mobile .hlist dd:focus, .ranger-navbox.pill-mobile .hlist dt:hover, .ranger-navbox.pill-mobile .hlist dt:focus, .ranger-navbox.pill-mobile .hlist li:hover, .ranger-navbox.pill-mobile .hlist li:focus { box-shadow: var(--navbox-pill-box-shadow--hover); background: var(--navbox-pill-background--hover); } /* pill with selflink * * Only select the deepest level for nested lists. * We have to use :has() to pick pills with selflink and * all browsers which support :has() should also support :is() and :not(), * therefore we can use :is() and :not() here safely. */ .ranger-navbox.pill-mobile .hlist .ranger-list :is(li,dt,dd):has(.mw-selflink):not(:has(li, dt, dd)){ background: var(--navbox-pill-selflink-background); } } /********************* * End Template:Navbox* **********************/ ef53304ec73d1489fe61b0d50ab8f34bd3a07f55 MediaWiki:Gadgets/ranger/variables.css 8 36 37 2025-03-25T22:48:06Z Mr Pie 5 2833 Adding default set of pages css text/css .ranger-navbox{ --navbox-background: var(--wiki-content-background-color); /* for entire navbox */ --navbox-margin: 0.5em auto; --navbox-padding: 4px; --navbox-gap: 3px; /* when using zero-value, it must be 0px */ --navbox-outer-border-color: var(--wiki-content-border-color--accent); --navbox-outer-border-width: 1px; --navbox-outer-border-style: solid; --navbox-outer-border-radius: 0px; --navbox-font-size: calc(1em - 2px); --navbox-title-color: var(--wiki-accent-label-color); --navbox-title-font-size: calc(125%); --navbox-title-background: var(--wiki-accent-color); --navbox-title-icon-color: var(--wiki-accent-label-color); --navbox-title-link-color: var(--navbox-title-color); --navbox-title-link-color--visited: var(--navbox-title-link-color); --navbox-title-link-color--hover: var(--wiki-accent-link-color); --navbox-title-redlink-color: var(--navbox-title-link-color); --navbox-title-link-decoration: underline solid; --navbox-title-redlink-decoration: underline wavy; --navbox-title-padding--y: 0.5em; --navbox-above-background: color-mix(in srgb, var(--wiki-content-text-color) 15%, transparent); --navbox-above-color: var(--wiki-content-text-color); --navbox-above-padding: var(--navbox-list-padding); --navbox-below-background: var(--navbox-above-background); --navbox-below-color: var(--navbox-above-color); --navbox-below-padding: var(--navbox-above-padding); --navbox-header-color: var(--navbox-title-color); --navbox-header-font-size: calc(110%); --navbox-header-background: var(--navbox-title-background); --navbox-header-icon-color: var(--navbox-title-icon-color); --navbox-header-link-color: var(--navbox-title-link-color); --navbox-header-link-color--visited: var(--navbox-title-link-color--visited); --navbox-header-link-color--hover: var(--navbox-title-link-color--hover); --navbox-header-redlink-color: var(--navbox-title-redlink-color); --navbox-header-link-decoration: var(--navbox-title-link-decoration); --navbox-header-redlink-decoration: var(--navbox-title-redlink-decoration); --navbox-header-padding--y: 0.3em; --navbox-subheader-font-size: calc(100%); --navbox-subheader-padding--y: calc(var(--navbox-header-padding--y)/2); --navbox-list-background: color-mix(in srgb, var(--wiki-content-text-color) 5%, transparent); --navbox-list-background--striped: color-mix(in srgb, var(--wiki-content-text-color) 8%, transparent); --navbox-list-color: var(--wiki-content-text-color); --navbox-list-padding: 0.25em 0.5em; /* --navbox-group-* also apply to .ranger-subgroup */ --navbox-group-text-align: left; --navbox-group-text-align--mobile: left; /* only for mobile view */ --navbox-group-background: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); --navbox-group-color: var(--wiki-content-text-color); --navbox-group-padding: var(--navbox-list-padding); --navbox-tree-line-color: color-mix(in srgb, var(--wiki-accent-color) 30%, transparent); --navbox-tree-line-width: 2px; --navbox-tree-indent: 1em; --navbox-tree-line-indent: 0.5em; --navbox-tree-line-spacing: var(--navbox-gap); --icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-chevron-down' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M6 9l6 6l6 -6'%3E%3C/path%3E%3C/svg%3E"); --icon-metalinks: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='icon icon-tabler icon-tabler-edit' width='24' height='24' viewBox='0 0 24 24' stroke-width='2' stroke='currentColor' fill='none' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none'%3E%3C/path%3E%3Cpath d='M7 7h-1a2 2 0 0 0 -2 2v9a2 2 0 0 0 2 2h9a2 2 0 0 0 2 -2v-1'%3E%3C/path%3E%3Cpath d='M20.385 6.585a2.1 2.1 0 0 0 -2.97 -2.97l-8.415 8.385v3h3l8.385 -8.415z'%3E%3C/path%3E%3Cpath d='M16 5l3 3'%3E%3C/path%3E%3C/svg%3E"); --navbox-icon-offset--x: 0.5rem; /* should be an absolute length (rem-based or px-based) */ } .ranger-navbox.pill, .ranger-navbox.pill-mobile{ /** vars for the "pill" style only (`.pill` and ".pill-mobile" clases) **/ --navbox-pill-gap: 0.3em; --navbox-pill-padding: 0.25em 0.75em; --navbox-pill-border-radius: 3px; --navbox-pill-box-shadow: none; --navbox-pill-background: color-mix(in srgb, var(--wiki-content-text-color) 5%, transparent); --navbox-pill-box-shadow--hover: inset 0 0 3px var(--navbox-list-color); --navbox-pill-background--hover: var(--navbox-pill-background); --navbox-pill-selflink-background: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent);/* background of pills with selflink in them */ /* remove list cell background */ --navbox-list-background: none; --navbox-list-background--striped: color-mix(in srgb, var(--wiki-content-text-color) 3%, transparent); } .ranger-navbox.no-underline-title-links{ --navbox-title-link-color: var(--wiki-accent-link-color); --navbox-title-link-decoration: none; --navbox-title-redlink-decoration: none; } .ranger-navbox.noborder, .ranger-navbox.no-border{ --navbox-padding: 0px; --navbox-outer-border-width: 0px; } /****************************** * Fallback for older browsers * *******************************/ @supports not (color:color-mix(in srgb, #000, transparent)) { .ranger-navbox { --navbox-above-background: var(--wiki-content-background-color--secondary); --navbox-list-background: transparent; --navbox-list-background--striped: var(--wiki-content-background-color--secondary); --navbox-group-background: var(--wiki-content-background-color--secondary); --navbox-tree-line-color: var(--wiki-content-background-color--secondary); } .ranger-navbox.pill, .ranger-navbox.pill-mobile { --navbox-pill-background: var(--wiki-content-background-color--secondary); --navbox-list-background--striped: transparent; --navbox-pill-selflink-background: var(--wiki-content-background-color--secondary); } } /*************** * End fallback * ****************/ 0f49887270380cdac6968f16cfc75a115818c39a MediaWiki:Gadgets/spoilers 8 37 38 2025-03-25T22:48:07Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [ "Pages with spoilers" ], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "main.js" ], "dependencies": [ "jquery" ], "type": "general" } } e2aacbae968c704385f3937e6b0004f263907193 MediaWiki:Gadgets/spoilers/main.js 8 38 39 2025-03-25T22:48:08Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript /* [[Template:Spoiler]] */ mw.hook('wikipage.content').add(function() { $('.spoiler-content') .off('click') // in case this code is loaded twice .on('click', function(e){ $(this).toggleClass('show'); }).find('a').on('click', function(e){ e.stopPropagation(); }); }); /* End Template:Spoiler */ c96e5a798a1781287a56037db79ab9094a3eae2b MediaWiki:Gadgets/themeColorEditor 8 39 40 2025-03-25T22:48:09Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [ 8 ], "contentModels": [ "css" ], "rights": [ "editinterface" ] }, "module": { "pages": [ "main.js" ], "dependencies": [], "type": "general" } } 294a47ed0bd03228625e8241b69d9f11fadd0390 MediaWiki:Gadgets/themeColorEditor/main.js 8 40 41 2025-03-25T22:48:10Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript $(function() { if (mw.config.get('wgPageName') != "MediaWiki:Common.css") return; mw.loader.load( 'https://commons.wiki.gg/load.php?lang=en&modules=ext.gadget.themeColorEditorScript&skin=vector&maxage=360&smaxage=360' ) }); a6d1c6789815c3c323c2afd84def2c1ca23d5efe MediaWiki:Gadgets/uploadMultipleFiles 8 41 42 2025-03-25T22:48:11Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": false, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [ -1 ], "contentModels": [], "rights": [ "edit", "upload" ] }, "module": { "pages": [ "main.js" ], "dependencies": [ "jquery", "mediawiki.util" ], "type": "general" } } 13bc1e984c367575a7b4f4ac29d2cf75b4f01c6c MediaWiki:Gadgets/uploadMultipleFiles/main.js 8 42 43 2025-03-25T22:48:12Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript /* Modified version of https://dev.fandom.com/wiki/UploadMultipleFiles * from https://terraria.wiki.gg/wiki/MediaWiki:Gadget-uploadMultipleFiles.js */ mw.loader.using(["site", "mediawiki.util"]).then(function() { if (mw.config.get("wgCanonicalSpecialPageName") !== "Upload") return; if (window.__wgg_UploadMultipleFiles_IsLoaded) { return; } window.__wgg_UploadMultipleFiles_IsLoaded = true; var l10nFactory = l10nFactory || function($lang, $data) { return function ($key) { // (null == undefined) is true, (null === undefined) is false return ($data[$lang] && $data[$lang][$key] != null) ? $data[$lang][$key] : $data.en[$key]; }; }; const l10n = l10nFactory(mw.config.get("wgUserLanguage"), { en: { multiupload: "Upload multiple files:", yes: "Yes", no: "No", sourcefiles: "Source files:", categoryname: "Category name:", categorynamehint: "Page name of the category the files will automatically be added to, e.g. Item images", categorynamespace: "Category", uploadfiles: "Upload files", nofiles: "Please select some files first.", nolicense: "Please select a valid license first.", summary: "Summary", license: "Licensing", categories: "Categories", uploading: "Uploading files...", uploaded: "Uploaded:", failed: "Failed:", done: "Done." } }); const getUploadDescription = function() { var sections = []; var summary = $("#wpUploadDescription").val(); var licenseDisplayName = $("#wpLicense option:selected").val(); var categoryName = $("#multiFileCategory").val(); if (summary !== "") sections.push(summary); if (licenseDisplayName !== "") { var licenseTemplateText = $("#wpLicense option:selected").prop("title"); sections.push("== " + l10n("license") + " ==\n" + licenseTemplateText); } if (categoryName !== "") sections.push("[[" + l10n("categorynamespace") + ":" + categoryName + "]]"); return sections.join("\n\n"); }; const getWatchlistPreference = function() { if ($("#wpWatchthis").is(":checked")) { return "watch"; } else { return "nochange"; } }; $(function(){ $("#wpUploadFile").parent().parent().addClass("regularFileSelect"); $("tr.regularFileSelect").before('<tr><td class="mw-label">'+ l10n("multiupload") + '</td><td class="mw-input"><label><input type="radio" name="multipleFiles" value="'+ l10n("yes") + '" /> '+ l10n("yes") + '</label> &nbsp; <label><input type="radio" name="multipleFiles" value="'+ l10n("no") + '" checked="" /> '+ l10n("no") + '</label></td></tr>'); $("tr.regularFileSelect").after('<tr class="multipleFileSelect" style="display:none;"><td class="mw-label">' + l10n("sourcefiles") + '</td><td class="mw-input"><input type="file" id="multiupload" multiple /></td></tr>'); $("input[name='wpUpload']").addClass("regularFileSelect"); $("#wpDestFile").parent().parent().addClass("regularFileSelect"); $("#wpIgnoreWarning").parent().parent().addClass("regularFileSelect"); // Append "category name" textbox to multiupload section $("#mw-upload-form #mw-htmlform-description tbody").append('<tr class="mw-htmlform-field-HTMLTextField multipleFileSelect" style="display:none;"><td class="mw-label"><label for="multiFileCategory"><abbr title="' + l10n("categorynamehint") + '">' + l10n("categoryname") + '</abbr></label></td><td class="mw-input"><input id="multiFileCategory" name="multiFileCategory" size="60"></td></tr>'); $("input[name='wpUpload']").after('<input type="button" value="' + l10n("uploadfiles") + '" class="multipleFileSelect" style="display:none;" id="multiFileSubmit" />'); $("input[name='multipleFiles']").change(function() { if (this.value === l10n("yes")) { $(".regularFileSelect").hide(); $(".multipleFileSelect").show(); } else { $(".regularFileSelect").show(); $(".multipleFileSelect").hide(); } }); $("#multiFileSubmit").click(function() { var files = $("#multiupload")[0].files; // Cancel upload if no files are selected if (files.length === 0) { alert(l10n("nofiles")); return false; } // Cancel upload if no license is selected if ($("#wpLicense option:selected").val() === "" && !mw.config.get("UMFBypassLicenseCheck")) { alert(l10n("nolicense")); return false; } // Description is summary + license + category var description = getUploadDescription(); var watch = getWatchlistPreference(); $("#firstHeading").text(l10n("uploading")); $("#mw-content-text").html("<h3>" + l10n("uploaded") + "</h3><ul></ul><div style='display:none;' id='multiUploadFailed'><h3>" + l10n("failed") + "</h3><ul></ul></div>"); var currentFileIdx = 0; var uploadCurrentFile; uploadCurrentFile = function() { if (currentFileIdx > files.length) { $("#mw-content-text").append("<h3>"+ l10n("done") + "</h3>"); return; } if (files[currentFileIdx] === undefined) { currentFileIdx++; uploadCurrentFile(); return; } fd = new FormData(); fd.append("action", "upload"); fd.append("token", mw.user.tokens.get("csrfToken")); fd.append("filename", files[currentFileIdx].name); fd.append("file", files[currentFileIdx]); fd.append("text", description); fd.append("watchlist", watch); fd.append("ignorewarnings", 1); fd.append("format", "json"); $.ajax({ url: mw.util.wikiScript("api"), method: "POST", data: fd, cache: false, contentType: false, processData: false, type: "POST" }).done(function(d) { if (d.error == undefined) { $("#mw-content-text > ul").append('<li><a href="' + d.upload.imageinfo.descriptionurl + '" target="_blank">' + d.upload.filename + '</a></li>'); } else { $("#multiUploadFailed ul").append('<li>' + files[currentFileIdx].name + '</li>'); $("#multiUploadFailed").show(); } currentFileIdx++; uploadCurrentFile(); }).fail(function() { $("#multiUploadFailed ul").append('<li>' + files[currentFileIdx].name + '</li>'); $("#multiUploadFailed").show(); currentFileIdx++; uploadCurrentFile(); }); }; uploadCurrentFile(); }); }); }); b05306b3ea3271c87b87546ac6619aa30e47782f MediaWiki:Gadgets/vectorScripts 8 43 44 2025-03-25T22:48:13Z Mr Pie 5 2833 Adding default set of pages GadgetDefinition application/json { "settings": { "section": "", "package": true, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [], "namespaces": [], "contentModels": [], "rights": [], "skins": [ "vector" ] }, "module": { "pages": [ "main.js" ], "dependencies": [], "type": "general" } } f26fca963d213febee869477a05933a6fedfc542 MediaWiki:Gadgets/vectorScripts/main.js 8 44 45 2025-03-25T22:48:14Z Mr Pie 5 2833 Adding default set of pages javascript text/javascript /*** Mobile navigation toggle button ***/ $( function () { const BUTTON_CLASS = 'mobile-nav-toggle' if (document.querySelector('button.' + BUTTON_CLASS)){return;} // early return to avoid double button if this runs twice let mobileSidebarButton = document.createElement( 'button' ); mobileSidebarButton.className = BUTTON_CLASS; mobileSidebarButton.addEventListener( 'click', function () { mobileSidebarButton.classList.toggle( 'nav--expanded' ); } ); document.body.classList.add( 'has-vector-mobile-menu' ); document.getElementById( 'mw-panel' ).prepend( mobileSidebarButton ); } ); /*** End mobile navigation toggle button ***/ e69af46fab43eebe82af8fb8de4b57f27b1f59e6 MediaWiki:Licenses 8 45 46 2025-03-25T22:48:15Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki *Game content ** License|game|This contains content from the game or its official media *Commonly used ** License|fairuse|This will be used in a way that qualifies as "fair use" under US law ** License|CC0|This file is licensed under the CC0 1.0 License ** License|CC-BY-NC-ND|This is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License ** License|CC-BY-NC-SA|This is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License ** License|CC-BY-NC|This is licensed under the Creative Commons Attribution-NonCommercial 3.0 License ** License|CC-BY-ND|This is licensed under the Creative Commons Attribution-NoDerivs 3.0 License ** License|CC-BY-SA|This is licensed under the Creative Commons Attribution-ShareAlike 3.0 License ** License|permission|The copyright holder gave permission to use this work only in wiki.gg articles ** License|CC-BY|This is licensed under the Creative Commons Attribution 3.0 License ** License|CC-PD|This is in the public domain ** License|CC-SRR|This is licensed under the Creative Commons Some Rights Reserved License *Unsure or unknown ** License|nolicense|I don't know the license 80cf31331a258a3fc3651f6d5961fbb5c1822cee MediaWiki:Mainpage 8 46 47 2025-03-25T22:48:16Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{SITENAME}} 3879910e8b355a24373fd09ccc909145b2639907 MediaWiki:Newarticletext 8 47 48 2025-03-25T22:48:17Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki You have followed a link to a page that does not exist yet. To create the page, start typing in the box below (see the [$1 help page] for more info). If you are here by mistake, click your browser's <strong>back</strong> button. 778f9ef242eb3058ef30ed3325b901adb762a2af MediaWiki:Theme-definitions 8 48 49 2025-03-25T22:48:18Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki * light[bundled|kind=light] * dark[bundled|kind=dark] 05cdfdf87ea42919cc6ea267d3972cc06847ed60 MediaWiki:Vector.css 8 49 50 2025-03-25T22:48:19Z Mr Pie 5 2833 Adding default set of pages css text/css /* All CSS here will be loaded for users of the Vector skin */ /********************************************************* * Backwards compatibility with deprecated variable names * **********************************************************/ :root { --wiki-heading-color: var(--wiki-content-heading-color); } /**************************************** * End backwards compatibility variables * *****************************************/ /************************************ * Body, head, and general framework * *************************************/ html, body{ height: auto; min-height: 100%; } body { background-color: var(--wiki-body-background-color); background-image: var(--wiki-body-background-image); /* the following have fallbacks for backwards compatibility with older versions of the loadout */ background-position: var(--wiki-body-background-position, top center); background-size: var(--wiki-body-background-size, cover); background-repeat: var(--wiki-body-background-repeat, no-repeat); background-attachment: var(--wiki-body-background-attachment, fixed); font-family: var(--wiki-body-font-family); accent-color: var(--wiki-accent-color); box-sizing: border-box; } /* clear fix */ body::after{ content: ""; display: table; clear: both; } #mw-page-base { background:none; } /* let ul default to text that respects color */ ul { list-style-image: none; } /************************ * End general framework * *************************/ /************** * Vector tabs * ***************/ .vector-menu-tabs-legacy { padding-left: var(--wiki-content-border-width, 1px); } .vector-menu-tabs-legacy li, #p-cactions { background-image: linear-gradient( to top, var(--wiki-navigation-border-color) 0, var(--wiki-navigation-background-color) var(--wiki-content-border-width, 1px), var(--wiki-navigation-background-color--secondary) 100%); } #p-cactions { z-index: 5; } #p-variants { background-color: var(--wiki-content-background-color); } .vector-menu-dropdown { /* Matching a built-in rule for .vector-menu-tabs-legacy */ height: 2.5em; } .vector-menu-tabs-legacy li.selected { background: var(--wiki-navigation-selected-background-color); border-color: var(--wiki-navigation-selected-border-color); } .vector-menu-tabs, .vector-menu-tabs a, #mw-head .vector-menu-dropdown .vector-menu-heading{ background-image: linear-gradient(to bottom,transparent 0,var(--wiki-navigation-border-color) 100%); background-size: var(--wiki-content-border-width, 1px) 100%; } .vector-menu-tabs li a, .vector-menu-tabs li.new a, .vector-menu-tabs li.new a:visited, .vector-menu-tabs .selected a, .vector-menu-tabs .selected a:visited, #mw-head .vector-menu-dropdown .vector-menu-heading { color: var(--wiki-navigation-text-color); } .vector-menu-tabs .selected a, .vector-menu-tabs .selected a:visited { color: var(--wiki-navigation-selected-text-color); } .vector-menu-dropdown .vector-menu-content { background: none; border: none; box-shadow:none; margin-top:-1px; } .vector-menu-dropdown .vector-menu-content-list { background-color: var(--wiki-navigation-background-color--secondary); border: 1px solid var(--wiki-navigation-border-color); } div.vectorMenu .mw-list-item a, .vector-menu-dropdown .mw-list-item a, .vector-menu-dropdown .mw-list-item.selected a, .vector-menu-dropdown .mw-list-item.selected a:visited { color: var(--wiki-navigation-text-color); } .vector-menu-tabs li a:hover, .vector-menu-tabs li.new a:hover, .vector-menu-tabs li.new a:visited:hover, #mw-head .vector-menu-dropdown .vector-menu-heading:hover, div.vectorMenu .mw-list-item a:hover, .vector-menu-dropdown .mw-list-item.selected a:hover, .vector-menu-dropdown .mw-list-item.selected a:visited:hover { color:var(--wiki-navigation-text-color--hover); } .vector-menu-tabs .selected a:hover, .vector-menu-tabs .selected a:visited:hover { /* don't use the regular hover color because the background of selected could be different */ color: var(--wiki-navigation-selected-text-color); } .vector-menu-dropdown .vector-menu-heading::after { filter: brightness(0) var(--wiki-icon-to-link-filter); } #p-search { z-index:2; } #p-search .searchButton { background-color:transparent; } /****************** * End vector tabs * *******************/ /******** * Links * *********/ a, .mw-parser-output a.external, .mw-parser-output a.extiw { color: var(--wiki-content-link-color); } a:visited, .mw-parser-output a.extiw:visited, .mw-parser-output a.external:visited { color: var(--wiki-content-link-color--visited); } a:not(.mw-selflink):hover, a:visited:hover, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:visited:hover, .mw-parser-output a.external:hover, .mw-parser-output a.external:visited:hover { color:var(--wiki-content-link-color--hover); } a.new, a.new:visited, a.new:hover, .mw-usertoollinks-contribs-no-edits { color:var(--wiki-content-redlink-color); } a:not(.mw-selflink):active, a:visited:active, .mw-parser-output a.extiw:active, .mw-parser-output a.extiw:visited:active, .mw-parser-output a.external:active, .mw-parser-output a.external:visited:active { color: var(--wiki-warning-color); } /* move external marker to an after so we can filter it to link color */ .mw-parser-output a.external { background:none; padding-right: 0; } .mw-parser-output a.external::after { display:inline-block; width:1em; height:1em; margin-left:1px; content:''; vertical-align: text-top; --mask: var(--icon) no-repeat; --mask-size: 0.857em; --mask-position: center right; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: var(--mask-size); mask-size: var(--mask-size); -webkit-mask-position: var(--mask-position); mask-position: var(--mask-position); background-color: currentColor; } .mw-parser-output a.external::after { margin-left:0; --icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22 viewBox=%220 0 12 12%22%3E %3Cpath d=%22M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1ZM2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z%22/%3E %3C/svg%3E"); } .plainlinks a.external::after { display:none; } a.extiw[title^="wikipedia:"]::after, a.extiw[title^="wp:"]::after, a.extiw[title^="mw:"]::after, a.extiw[title^="support:"]::after { display:inline-block; width:1em; height:1em; margin-left:1px; background-position: center right; background-repeat: no-repeat; background-size: 0.857em; content:''; vertical-align: text-top; } a.extiw[title^="wikipedia:"]::after, a.extiw[title^="wp:"]::after { background-image:url(https://commons.wiki.gg/images/2/28/Wikipedia.svg?202406); } a.extiw[title^="mw:"]::after { background-image:url(https://commons.wiki.gg/images/9/9b/MediaWiki.svg?202406); } a.extiw[title^="support:"]::after { background-image:url(https://commons.wiki.gg/images/9/9b/Wiki.gg_icon-pink.svg); } /************ * End links * *************/ /*************** * Left Sidebar * ****************/ #mw-panel .vector-menu-portal { background-color: var(--wiki-sidebar-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-sidebar-background-color) var(--wiki-sidebar-background-opacity), transparent); border: var(--wiki-sidebar-border-width, 1px) solid var(--wiki-sidebar-border-color); margin: 0 0.5em; } #mw-panel .vector-menu-portal + .vector-menu-portal { border-top-width: 0; } #mw-panel .vector-menu-portal:last-child { margin-bottom:0; } .vector-menu-portal .vector-menu-heading { padding: 0.5rem 0.25rem 0 0.5rem; margin: 0; background: none; color: var(--wiki-sidebar-heading-color); font-family:var(--wiki-sidebar-heading-font-family); } .vector-menu-portal .vector-menu-content { margin: 0 0.5em; } .vector-menu-portal .vector-menu-content li a{ display: block; } .vector-menu-portal .vector-menu-content .mw-list-item a, .vector-menu-portal .vector-menu-content .mw-list-item a:visited, .vector-menu-portal .vector-menu-content li a, .vector-menu-portal .vector-menu-content li a:visited { color: var(--wiki-sidebar-link-color); } .vector-menu-portal .vector-menu-content .mw-list-item a:hover, .vector-menu-portal .vector-menu-content .mw-list-item a:visited:hover { color:var(--wiki-sidebar-link-color--hover); } #t-newpage { --sidebar-icon:url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 384 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-upload { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 512 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M288 109.3V352c0 17.7-14.3 32-32 32s-32-14.3-32-32V109.3l-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L288 109.3zM64 352H192c0 35.3 28.7 64 64 64s64-28.7 64-64H448c35.3 0 64 28.7 64 64v32c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V416c0-35.3 28.7-64 64-64zM432 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-print { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 512 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M128 0C92.7 0 64 28.7 64 64v96h64V64H354.7L384 93.3V160h64V93.3c0-17-6.7-33.3-18.7-45.3L400 18.7C388 6.7 371.7 0 354.7 0H128zM384 352v32 64H128V384 368 352H384zm64 32h32c17.7 0 32-14.3 32-32V256c0-35.3-28.7-64-64-64H64c-35.3 0-64 28.7-64 64v96c0 17.7 14.3 32 32 32H64v64c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V384zM432 248a24 24 0 1 1 0 48 24 24 0 1 1 0-48z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-whatlinkshere { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 640 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0L579.8 267.7zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5L217.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0L60.2 244.3z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-specialpages { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 576 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-cargopagevalueslink { --sidebar-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 126.971 136.024'%3E%3Cpath d='m105.999 0-84 .049L0 8.957v127.065h126.97V8.957Z' fill='none' display='inline' opacity='1' paint-order='normal'/%3E%3Cpath d='m9.735 8.774 12.265-5h84l12.25 5H9.75' fill='%23000' fill-opacity='1' display='inline'/%3E%3Cpath d='M3.5 41.024H28v63.5H3.5zm95.5 0h24.5v63.5H99zm-95.5 67.5H123v24H3.5zm0-95.5H123v24H3.5zm27.985 28V59.67l13.61 13.61 17.323 17.324 1.788 1.787 12.131 12.132h19.147v-16.21l-13.6-13.6-1.788-1.787-17.325-17.324-14.578-14.579H31.485zm45.865 0-12.2 12.2 17.324 17.324 13.01-13.01V41.024H77.35zM42.716 75.658l-11.23 11.231v17.634h17.013l11.541-11.54-17.324-17.325z' fill='%23000' fill-opacity='1' fill-rule='nonzero' display='inline' opacity='1' paint-order='normal'/%3E%3C/svg%3E"); order:-1; } #t-specialpages > a::before, #t-whatlinkshere > a::before, #t-print > a::before, #t-newpage > a::before, #t-upload > a::before, #t-cargopagevalueslink > a::before { content:''; background-image:var(--sidebar-icon); background-size:contain; background-repeat:no-repeat; background-position:center; display:inline-block; width:15px; height:15px } #p-tb .mw-list-item > a::before { filter:var(--wiki-icon-to-link-filter) } #p-tb .mw-list-item > a { display:flex; align-items:center; gap:3px } #p-tb .vector-menu-content-list { display:flex; flex-direction:column; } /* Sidebar spacing and border-radius section */ #mw-panel .vector-menu-portal:not(:last-child) { margin-bottom:var(--wiki-sidebar-portal-spacing); } #mw-panel #p-logo + .vector-menu-portal { /* The way this works is that if the sidebar does not have any spacing, only the top and bottom corners of the top and bottom portals respectively should be rounded, instead of all corners of every portal. min and calc are combined here to basically create an `if x > 0 then y else z` function. The lower of (sidebar-border-radius) and (spacing * 999) are compared and the smaller value is taken (999 is simply an arbitrary large number). If portal spacing is zero, multiplying it gets 0 and will be the smaller value. If it's non-zero, it will be large and sidebar-border-radius will be the smaller value. This is only applied to the "inner" corners because we'd want the "outer" corners rounded in either scenario. */ border-radius: var(--wiki-sidebar-border-radius) var(--wiki-sidebar-border-radius) calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )) calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )); } #mw-panel .vector-menu-portal:last-child { /* see rule above for explanation */ border-radius: calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )) calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )) var(--wiki-sidebar-border-radius) var(--wiki-sidebar-border-radius); } #mw-panel .vector-menu-portal { /* see above rules for explanation */ border-radius:calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )); } #mw-panel .vector-menu-portal + .vector-menu-portal { /* This keeps the border from doubling up if there is no spacing between them, The portals other than the first only have a top border if there is spacing */ border-top-width: min(var(--wiki-sidebar-border-width, 1px), var(--wiki-sidebar-portal-spacing, 0px)); /* the 1px and 0px fallbacks are for backwards compatibility with older versions of the loadout */ } /* end sidebar spacing and border-radius */ /******************* * End left sidebar * ********************/ /******* * Logo * ********/ /* [[File:Site-logo.png]] */ .mw-wiki-logo { background-size: contain; } /*********** * End logo * ************/ /*************** * Content area * ****************/ .mw-body, .parsoid-body, .mw-footer { color: var(--wiki-content-text-color); background-color: var(--wiki-content-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color) var(--wiki-content-background-opacity), transparent); border: var(--wiki-content-border-width, 1px) solid var(--wiki-content-border-color); margin-right: 1em; } .mw-footer { border-top-width:0; } .mw-footer li { color: var(--wiki-content-text-color); } /* fix */ @media screen and (max-width: 900px) { #footer-icons, #footer-places { clear: unset; } } @media screen and (max-width: 981px) { .mw-body, .parsoid-body, .mw-footer { margin-right: 0; } } /******************************* * End content area and footer * *******************************/ /*********** * Headings * ************/ .mw-body h1, .mw-body h2 { border-bottom: 1px solid var(--wiki-content-border-color); font-family: var(--wiki-heading-font-family); } h1, h2, h3, h4, h5, h6 { color: var(--wiki-heading-color); } .client-js .mw-content-ltr .mw-editsection-bracket:first-of-type, .client-js .mw-content-rtl .mw-editsection-bracket:not(:first-of-type), .mw-editsection-divider, .client-js .mw-content-rtl .mw-editsection-bracket:first-of-type, .client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type) { color: var(--wiki-heading-color); } /*************** * End headings * ****************/ /************* * Wikitables * **************/ .wikitable { background: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .wikitable>tr>th, .wikitable>*>tr>th { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .wikitable>tr>td, .wikitable>*>tr>td { border: 1px solid var(--wiki-content-border-color); } /* Forward = yes bg on Special:Interwiki */ table.mw-interwikitable.body td.mw-interwikitable-local-yes { background: var(--content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 25%, transparent); } .zebra-table > * > tr:nth-of-type(2n), .zebra-table > tr:nth-of-type(2n) { background: transparent; /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--secondary) 5%, transparent); } .client-js .sortable:not(.jquery-tablesorter) > * > tr:first-child > th:not(.unsortable), .jquery-tablesorter th.headerSort { background-image: unset; position: relative; } .client-js .sortable:not(.jquery-tablesorter) > * > tr:first-child > th:not(.unsortable)::after, .jquery-tablesorter th.headerSort::after { content: ""; display: block; position: absolute; top: 0; right: 0; width: 21px; height: 100%; --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2221%22 height=%229%22 viewBox=%220 0 21 9%22%3E %3Cpath d=%22m14.5 5-4 4-4-4zm0-1-4-4-4 4z%22 fill=%22%23fff%22/%3E %3C/svg%3E") no-repeat; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: auto; mask-size: auto; -webkit-mask-position: center right; mask-position: center right; background-color: var(--wiki-content-link-color); } .jquery-tablesorter th.headerSortUp::after { --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2221%22 height=%224%22 viewBox=%220 0 21 4%22%3E %3Cpath d=%22m6.5 4 4-4 4 4z%22 fill=%22%23fff%22/%3E %3C/svg%3E") no-repeat; } .jquery-tablesorter th.headerSortDown::after { --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2221%22 height=%224%22 viewBox=%220 0 21 4%22%3E %3Cpath d=%22m14.5 0-4 4-4-4z%22 fill=%22%23fff%22/%3E %3C/svg%3E") no-repeat; } /***************** * End wikitables * ******************/ /************** * Preferences * ***************/ .mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed, .mw-prefs-tabs>.oo-ui-menuLayout-content>.oo-ui-indexLayout-stackLayout>.oo-ui-tabPanelLayout { border: none; } .oo-ui-tabSelectWidget-framed { background-color: transparent; border-bottom: 1px solid var(--wiki-accent-color); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover { background-color:var(--wiki-accent-label-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-label-color) 75%, transparent); color: var(--wiki-accent-color); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover { color: var(--wiki-accent-color--hover); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label { border-bottom: none; } #preferences .mw-htmlform-submit-buttons { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); } .oo-ui-pendingElement-pending { background-color: var(--wiki-content-background-color--secondary); background-image: linear-gradient(135deg,var(--wiki-content-background-color) 25%,transparent 25%,transparent 50%,var(--wiki-content-background-color) 50%,var(--wiki-content-background-color) 75%,transparent 75%,transparent); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select { color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color) } .view-dark .oo-ui-inputWidget-input.oo-ui-indicator-down { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22 viewBox=%220 0 12 12%22%3E%3Ctitle%3E down %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M9.9 2.9 6 6.8 2.1 2.9 1 4l5 5 5-5z%22/%3E%3C/g%3E%3C/svg%3E"); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover { color:var(--wiki-content-text-mix-color); border-color:var(--wiki-accent-color); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active { color: var(--wiki-content-dynamic-color); border-color: var(--wiki-accent-color) } .oo-ui-dropdownInputWidget select option, .oo-ui-dropdownInputWidget select optgroup { color: #000; } .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover, .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus, .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled:focus, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled:active, .oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input, .oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus, .oo-ui-textInputWidget.oo-ui-widget-enabled:active .oo-ui-inputWidget-input, .oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-accent-color); box-shadow: none; } .oo-ui-radioInputWidget [type="radio"] + span { background-color:var(--wiki-content-dynamic-color--inverted); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked + span, .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:hover + span{ border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 90%, transparent); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:hover + span { border-color:var(--wiki-accent-color); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:active + span{ background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:focus + span::before { border-color: var(--wiki-content-dynamic-color--inverted); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:active + span { border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); /* fallback */ box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget { color: var(--wiki-content-text-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-menuOptionWidget.oo-ui-optionWidget.oo-ui-optionWidget-selected, .oo-ui-menuOptionWidget.oo-ui-optionWidget.oo-ui-optionWidget-highlighted, .oo-ui-menuOptionWidget.oo-ui-optionWidget.oo-ui-optionWidget-highlighted.oo-ui-optionWidget-selected, .oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); color: var(--wiki-content-text-color); } .oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted, .oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); color: var(--wiki-accent-color); } .mw-prefs-tabs.mw-prefs-tabs-searching .oo-ui-tabPanelLayout.mw-prefs-search-matched > fieldset > legend { background: var(--wiki-content-background-color--secondary); } .mw-prefs-search-highlight { background-color: transparent !important; /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 7%, transparent) !important; outline-color: transparent !important; /* fallback */ outline-color: color-mix(in srgb, var(--wiki-accent-color) 7%, transparent) !important; } /**************** * End preferences * *****************/ /*************** * Page history * ****************/ #pagehistory li { background-color: transparent; border: none; } #pagehistory li.selected { background-color: var(--wiki-content-background-color--secondary); border: 1px dashed var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .diff td.diff-addedline { background-color: var(--wiki-content-background-color); border-color: var(--wiki-success-color); border-width: 1px 1px 1px 4px; } .diff td.diff-addedline .diffchange { background-color: var(--wiki-success-color); color: var(--wiki-success-label-color); } .diff td.diff-deletedline { background-color: var(--wiki-content-background-color); border-color: var(--wiki-alert-color); border-width: 1px 1px 1px 4px; } .diff td.diff-deletedline .diffchange { background-color: var(--wiki-alert-color); color: var(--wiki-alert-label-color) } .diff td.diff-context { background:var(--wiki-content-text-mix-color-95); /* fallback */ background: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 80%, var(--wiki-content-background-color)); border-color: var(--wiki-neutral-color, var(--wiki-content-text-mix-color)); /* fallback for backwards compatibility */ color: var(--wiki-content-text-color); } .diff-marker a.mw-diff-movedpara-right { color: transparent; } .diff-marker a.mw-diff-movedpara-right:hover:after { opacity: .75; } .diff-marker a.mw-diff-movedpara-right:after { color: var(--wiki-content-text-color); content: "\21a9"; } .diff-marker a.mw-diff-movedpara-left { color: transparent; } .diff-marker a.mw-diff-movedpara-left:hover:after { opacity: .75; } .diff-marker a.mw-diff-movedpara-left:after { color: var(--wiki-content-text-color); content: "\21aa"; } .mw-plusminus-neg { color:var(--wiki-alert-color); } .mw-plusminus-null{ color:var(--wiki-neutral-color, var(--wiki-content-text-mix-color)); /* fallback for backwards compatibility */ } .mw-plusminus-pos { color:var(--wiki-success-color); } .updatedmarker { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-success-color) 25%, transparent); color:var(--wiki-content-text-color); } li span.deleted, span.history-deleted { color: var(--wiki-content-text-mix-color); } span.mw-history-suppressed { /* overrides above, since suppressed is also deleted */ color: var(--wiki-content-text-color); } /* inline diff (1.41) */ .mw-diff-inline-header { border-bottom: 1px solid var(--wiki-content-border-color); } .mw-diff-inline-added ins, .mw-diff-inline-changed ins, .mw-diff-inline-moved ins, .mw-diff-table-prefix .mw-diff-inline-legend .mw-diff-inline-legend-ins, .mw-diff-inline-added.mw-diff-empty-line::after, .mw-inline-diff-newline::after { background:var(--wiki-success-color); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 90%, transparent); color: var(--wiki-success-label-color); display: inline-block; } .mw-diff-inline-added.mw-diff-empty-line::after, .mw-diff-inline-deleted.mw-diff-empty-line::after, .mw-inline-diff-newline::after { padding: 0.4em 0; } .mw-diff-inline-deleted del, .mw-diff-inline-changed del, .mw-diff-inline-moved del, .mw-diff-table-prefix .mw-diff-inline-legend .mw-diff-inline-legend-del, .mw-diff-inline-deleted.mw-diff-empty-line::after { background:var(--wiki-alert-color); /* fallback */ background: color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); color: var(--wiki-alert-label-color); display: inline-block; } .mw-diff-movedpara-left::after, .mw-diff-movedpara-right::after { color: var(--wiki-content-text-color); } .ve-ui-diffElement-hasDescriptions .ve-ui-diffElement-content { border-right-color: var(--wiki-content-border-color); } .ve-ui-diffElement-attributeChange { color: var(--wiki-content-text-mix-color); } .ve-ui-diffElement-attributeChange ins { background-color:var(--wiki-success-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-success-color) 90%, transparent); box-shadow: 0 0 0 1px var(--wiki-success-color); /* fallback */ box-shadow: 0 0 0 1px color-mix(in srgb, var(--wiki-success-color) 90%, transparent); color: var(--wiki-success-label-color); } .ve-ui-diffElement-attributeChange del { background-color:var(--wiki-alert-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); box-shadow: 0 0 0 1px var(--wiki-alert-color); /* fallback */ box-shadow: 0 0 0 1px color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); color: var(--wiki-alert-label-color); } .ve-ui-diffElement-highlight { outline-color:var(--wiki-accent-color); /* fallback */ outline-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .ve-ui-changeDescriptionsSelectWidget > .oo-ui-optionWidget-highlighted { background:var(--wiki-accent-color); /* fallback */ background: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); } /* Edit conflict */ .mw-twocolconflict-split-tour-image-dual-column-view-1 { filter:var(--wiki-icon-general-filter); } .mw-twocolconflict-split-tour-image-blue-dot { filter:brightness(0) var(--wiki-icon-to-link-filter); } .mw-pulsating-dot::before, .mw-pulsating-dot::after { background-color: var(--wiki-content-link-color); } .mw-twocolconflict-split-current-version-header .mw-twocolconflict-revision-label { background-color: var(--wiki-alert-color); color:var(--wiki-alert-label-color); } .mw-twocolconflict-special-your-version-header .mw-twocolconflict-revision-label, .mw-twocolconflict-split-your-version-header .mw-twocolconflict-revision-label { background-color: var(--wiki-success-color); color:var(--wiki-success-label-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-copy, .mw-twocolconflict-split-column.mw-twocolconflict-split-copy { border-color: var(--wiki-neutral-color, var(--wiki-content-text-mix-color)); /* fallback for backwards compatibility */ background-color: var(--wiki-content-text-mix-color-95); } .mw-twocolconflict-single-column .mw-twocolconflict-split-collapsed .mw-twocolconflict-split-fade, .mw-twocolconflict-split-column .mw-twocolconflict-split-collapsed .mw-twocolconflict-split-fade { background-image: linear-gradient(transparent, var(--wiki-content-text-mix-color-95)); } .mw-twocolconflict-single-column, .mw-twocolconflict-split-column { background-color: var(--wiki-content-background-color); color: var(--wiki-content-text-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-delete, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-delete { border-color:var(--wiki-alert-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-alert-color) 40%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-delete, .mw-twocolconflict-split-column.mw-twocolconflict-split-delete { border-color: var(--wiki-alert-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-add, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-add { border-color:var(--wiki-success-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-success-color) 40%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-add, .mw-twocolconflict-split-column.mw-twocolconflict-split-add { border-color: var(--wiki-success-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange { background-color:var(--wiki-alert-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-alert-color) 30%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange, .mw-twocolconflict-single-column del.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column del.mw-twocolconflict-diffchange { background-color: var(--wiki-alert-color); color: var(--wiki-alert-label-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected ins.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected ins.mw-twocolconflict-diffchange, .mw-twocolconflict-single-column ins.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column ins.mw-twocolconflict-diffchange { background-color: var(--wiki-success-color); color:var(--wiki-success-label-color); } .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked + span, .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget [type="radio"] + span { border-color: var(--wiki-success-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-success-color) 80%, transparent); background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 10%, transparent); } .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget [type="radio"] + span { border-color: var(--wiki-success-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-success-color) 90%, transparent); background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 10%, transparent); } .mw-twocolconflict-split-selection > div:nth-child(1) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked + span, .mw-twocolconflict-split-selection > div:nth-child(1) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .mw-twocolconflict-split-selection > div:nth-child(1) .oo-ui-radioInputWidget [type="radio"] + span { border-color:var(--wiki-alert-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-alert-color) 10%, transparent); } .mw-twocolconflict-split-editable .mw-twocolconflict-split-editor { color:var(--wiki-content-text-color); } /**/ /******************* * End page history * ********************/ /******************** * Table of contents * *********************/ #toc, .toc, .toccolours, .mw-warning { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); box-shadow: 0 0.1em 0.2em #000000; } #mw-toc-heading{ border: 0; } .toctogglelabel { color: var(--wiki-content-link-color); } .tocnumber { color: var(--wiki-content-text-color); } /************************ * End table of contents * *************************/ /************* * Thumbnails * **************/ img.thumbborder { border: 1px solid var(--wiki-content-border-color); padding: 5px; } div.thumbinner { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } li.gallerybox div.thumb { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } html .thumbimage { background-color: unset; border: 1px solid var(--wiki-content-border-color); } .thumb, .thumb .thumbinner, .thumb .thumbimage { max-width: 100%; box-sizing: border-box; } .thumb .thumbimage:not(audio) { height: auto; } /* packed-overlay and packed-hover modes for galleries */ ul.mw-gallery-packed-hover li.gallerybox:hover div.gallerytextwrapper, ul.mw-gallery-packed-overlay li.gallerybox div.gallerytextwrapper, ul.mw-gallery-packed-hover li.gallerybox.mw-gallery-focused div.gallerytextwrapper { background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 65%, transparent); } /* Responsive floating thumbnails */ @media screen and (max-width: 720px) { div.tright, div.floatright, div.tleft, div.floatleft { float: none; margin: 0 auto; width: fit-content; } } /***************** * End thumbnails * ******************/ /************** * Wiki editor * ***************/ #wpTextbox0 { /* need !important here to override inline styling */ background-color:var(--wiki-content-background-color) !important; } .wikiEditor-ui { border: none; } .wikiEditor-ui .wikiEditor-ui-top, .wikiEditor-ui .wikiEditor-ui-view { border-color:var(--wiki-content-border-color); } .wikiEditor-ui-toolbar { background: var(--wiki-content-background-color--secondary); } .wikiEditor-ui-toolbar .group, .wikiEditor-ui-toolbar .section-secondary .group { border-color:var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .tabs span.tab a, .wikiEditor-ui-toolbar .tabs span.tab a:visited, .wikiEditor-ui-toolbar .tabs span.tab a.current, .wiikiEditor-ui-toolbar .tabs span.tab a.current:visited, .wikiEditor-ui-toolbar .booklet .index .current { color: var(--wiki-content-link-color); } .wikiEditor-ui-toolbar .group .tool-select .options { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .group .tool-select .options .option { color: var(--wiki-content-text-color); } .wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover { background-color: var(--wiki-content-background-color); } .wikiEditor-ui-toolbar .tabs span.tab a::before, .wikiEditor-ui-toolbar .group .tool-select .label::after { filter: var(--wiki-icon-general-filter); } .wikiEditor-ui-toolbar .group .label, .wikiEditor-ui-toolbar .group .tool-select .label, .wikiEditor-ui-toolbar .page-table th, .wikiEditor-ui-toolbar .page-table td, .wikiEditor-ui-toolbar .page-characters div span, .wikiEditor-ui-toolbar .booklet .index div { color: var(--wiki-content-text-color); } .wikiEditor-ui-toolbar .booklet>.index> :hover { background-color: var(--wiki-content-background-color--secondary); } .wikiEditor-ui-toolbar .page-characters div span { border: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .sections .section, .wikiEditor-ui-toolbar .booklet .pages, .wikiEditor-ui-toolbar .booklet .index .current, .wikiEditor-ui-toolbar .page-characters div span:hover { background-color: transparent; /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .wikiEditor-ui-toolbar .sections .section { border-top: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .page-characters div span:hover { border-color: var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .page-table td { border-top: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-tabs div a { background: #9A647F; display: inline-block; } .wikiEditor-ui-tabs div.current { border-bottom: 1px solid #3B3352; } .wikiEditor-ui-tabs div.current a { font-weight: bold; } .wikiEditor-ui-tabs { border-left: 1px solid #3B3352; border-top: 1px solid #3B3352; } .wikiEditor-ui-text { background-color:var(--wiki-content-dynamic-color--inverted); } .wikiEditor-preview-contents { background: transparent; background-color: rgba(255, 255, 255, 0.2); border-color: #3B3352; border-style: solid; border-width: 0 1px 1px; } .wikiEditor-ui-controls { background: transparent; } .wikiEditor-preview-contents, .wikiEditor-preview-loading { background-color: transparent; } .mw-wikiEditor-InsertLink-TitleInputField .oo-ui-messageWidget, .mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description { color: var(--wiki-content-text-mix-color); } .wikiEditor-toolbar-dialog .ui-dialog-content input[type='text']::placeholder { color: var(--wiki-content-text-mix-color); } .ext-WikiEditor-ResizingDragBar { background-color: var(--wiki-content-background-color--secondary); } .ext-WikiEditor-ResizingDragBar-ns { border-color: var(--wiki-content-border-color); } .ext-WikiEditor-ResizingDragBar span { background-color: var(--wiki-content-border-color); } .ext-WikiEditor-ResizingDragBar:hover span { background-color: var(--wiki-content-text-mix-color); } .ext-WikiEditor-twopanes-TwoPaneLayout .ext-WikiEditor-twopanes-pane1, .ext-WikiEditor-twopanes-TwoPaneLayout .ext-WikiEditor-twopanes-pane2 { border-color: var(--wiki-content-border-color); } .ext-WikiEditor-realtimepreview-button.oo-ui-toggleWidget-on .oo-ui-labelElement-label { color: var(--wiki-accent-color); } .wikiEditor-ui-toolbar .group, .wikiEditor-ui-toolbar .section-secondary .group { border-color: var(--wiki-content-border-color); } .ext-WikiEditor-realtimepreview-button:hover { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); color: var(--wiki-accent-color); border-color:var(--wiki-accent-color); box-shadow:inset 0 0 3px var(--wiki-accent-color); } .oo-ui-toggleButtonWidget.oo-ui-widget-enabled.oo-ui-buttonElement-frameless.oo-ui-toggleWidget-on .oo-ui-buttonElement-button { background-color: var(--wiki-content-background-color--secondary); } .ext-WikiEditor-reloadButton.oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button, .ext-WikiEditor-reloadButton.oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-background-color); } .editOptions { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); border-image: none; border-radius: 0 0 5px 5px; border-style: none solid solid; border-width: medium 1px 1px; } input#wpSummary { margin-bottom: 1em; margin-top: 1em; width: 80%; } .view-dark .ace_editor, .ace_editor { --ace-keywords: #CDA869; --ace-regexp: #E9C062; --ace-constants: #CF6A4C; --ace-illegal: #F8F8F8; --ace-deprecated: #D2A8A1; --ace-support: #9B859D; --ace-function: #DAD085; --ace-list: #F9EE98; --ace-variable: #7587A6; --ace-string: #8F9D6A; --ace-illegal-highlight: rgba(86, 45, 86, 0.75); --ace-step-highlight: #665200; --ace-multiselect-shadow: #141414; } .view-light .ace_editor{ --ace-keywords: #00f; --ace-regexp: #036a07; --ace-constants: #c5060b; --ace-illegal: #f00; --ace-deprecated: #f00; --ace-support: #6d79de; --ace-function: #3c4c72; --ace-list: #b90690; --ace-variable: #318495; --ace-string: #036a07; --ace-illegal-highlight: rgba(255, 0, 0, 0.1); --ace-step-highlight: #fcff00; --ace-multiselect-shadow: #fff; } .ace_editor .ace_gutter { background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 85%, transparent); } .ace_gutter-cell { color:var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 40%, transparent); } .ace_editor .ace_print-margin { width: 1px; background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 75%, transparent); } .ace_editor { /* this image gradient hack effectively lets the element have 2 layers of background */ background-image: linear-gradient(var(--wiki-content-dynamic-color), var(--wiki-content-dynamic-color)); background-color: var(--wiki-content-dynamic-color--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 93%, transparent); color: var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 93%, transparent); } .ace_editor .ace_cursor { color: var(--wiki-content-text-color); } .ace_editor .ace_marker-layer .ace_selection { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent) } .ace_editor.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px var(--ace-multiselect-shadow); } .ace_editor .ace_marker-layer .ace_step { background: var(--ace-step-highlight); } .ace_editor .ace_marker-layer .ace_active-line, .ace_editor .ace_gutter-active-line { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 3.1%, transparent) } .ace-tm .ace_marker-layer .ace_selected-word { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .ace_editor .ace_marker-layer .ace_selection { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); } .ace_editor .ace_marker-layer .ace_selected-word { border: 1px solid var(--wiki-content-background-color--secondary); /* fallback */ border: 1px solid color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent); } .ace_editor .ace_invisible { color: var(--wiki-content-background-color--secondary); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 25%, transparent); } .ace_editor .ace_keyword, .ace_editor .ace_meta { color: var(--ace-keywords); } .ace_editor .ace_constant, .ace_editor .ace_constant.ace_numeric, .ace_editor .ace_constant.ace_character, .ace_editor .ace_constant.ace_character.ace_escape, .ace_editor .ace_constant.ace_other, .ace_editor .ace_heading, .ace_editor .ace_markup.ace_heading, .ace_editor .ace_support.ace_constant { color: var(--ace-constants); } .ace_editor .ace_invalid.ace_illegal { color: var(--ace-illegal); background-color: var(--ace-illegal-highlight); } .ace_editor .ace_invalid.ace_deprecated { text-decoration: underline; font-style: italic; color: var(--ace-deprecated); } .ace_editor .ace_support, .ace_editor .ace_support.ace_type { color: var(--ace-support); } .ace_editor .ace_fold { background-color: var(--wiki-content-dynamic-color--secondary--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); border-color: var(--wiki-content-dynamic-color--secondary--inverted); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); } .ace_editor .ace_support.ace_function { color: var(--ace-function); } .ace_editor .ace_list, .ace_editor .ace_markup.ace_list, .ace_editor .ace_storage { color: var(--ace-list); } .ace_editor .ace_entity.ace_name.ace_function, .ace_editor .ace_meta.ace_tag, .ace_editor .ace_variable { color: var(--ace-variable); } .ace_editor .ace_string { color: var(--ace-string); } .ace_editor .ace_string.ace_regexp { color: var(--ace-regexp); } .ace_editor .ace_comment { font-style: italic; color:var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 30%, transparent); } .ace_editor .ace_xml-pe { color:var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 28%, transparent); } .ace_editor .ace_indent-guide { background:none; border-right:1px solid var(--wiki-content-dynamic-color); border-right:1px solid color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent); } .ace_search { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border: 1px solid var(--wiki-content-border-color); } .ace_search_field { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-mix-color); } .ace_button { color: var(--wiki-content-text-color); border: 1px solid var(--wiki-content-border-color); } .ace_button:hover { background-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .ace_button.checked { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .ace_searchbtn { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); border: 1px solid var(--wiki-content-border-color); } .ace_searchbtn:hover { background-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .ace_searchbtn.prev::after, .ace_searchbtn.next::after { border-color: var(--wiki-accent-label-color); } .ace_searchbtn_close { filter: var(--wiki-icon-general-filter); } .wikiEditor-ui .codeEditor-status { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .mw-editform #wpTextbox1 { background:var(--wiki-content-background-color); /* fallback */ background: color-mix(in srgb, var(--wiki-content-background-color) 50%, transparent); color: var(--wiki-content-text-color); } .view-dark .ext-codemirror-wrapper, .ext-codemirror-wrapper { --codemirror-yellow: #ffd700; --codemirror-light-blue: #adf; --codemirror-blue: #08f; --codemirror-green: #290; --codemirror-red: #f50; --codemirror-dark-red: #dd1616; --codemirror-purple: #CD4EF9; --codemirror-pink: #e0e; --codemirror-light-gray: #eee; --codemirror-gray: #84a0a0; } .view-light .ext-codemirror-wrapper { --codemirror-yellow: #9e8500; --codemirror-light-blue: #008ae7; --codemirror-blue: #0085f9; --codemirror-green: #290; --codemirror-red: #ef4f00; --codemirror-dark-red: #a11; --codemirror-purple: #80c; --codemirror-pink: #ed00ed; --codemirror-light-gray: #858585; --codemirror-gray: #6b8a8a; } .ext-codemirror-wrapper { background-color:var(--wiki-content-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color) 35%, transparent); color: var(--wiki-content-text-color) } .cm-editor .cm-selectionBackground, .cm-editor.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground { background: var(--wiki-accent-color); /* fallback */ background: color-mix(in srgb, var(--wiki-accent-color) 30%, transparent); } .cm-mw-keyword { color: var(--codemirror-purple) } .cm-mw-def { color: var(--codemirror-blue) } .cm-mw-variable-2 { color: var(--codemirror-light-blue) } .cm-mw-string { color: var(--codemirror-red) } .cm-mw-atom { color: var(--codemirror-pink) } .cm-mw-number { color: var(--codemirror-green) } .cm-mw-matching { background-color: var(--codemirror-yellow) } .cm-mw-skipformatting { background-color: var(--codemirror-light-blue) } .cm-mw-list { color: var(--codemirror-blue) } .cm-mw-doubleUnderscore, .cm-mw-hr, .cm-mw-signature { background-color: var(--wiki-content-background-color--secondary); color: var(--codemirror-blue) } .cm-mw-indenting { color: var(--codemirror-blue) } .cm-mw-mnemonic { color: var(--codemirror-green) } .cm-mw-comment { color: var(--codemirror-gray) } .cm-mw-apostrophes-bold, .cm-mw-apostrophes-italic, .cm-mw-section-header { color: var(--codemirror-blue) } .cm-mw-template, .cm-mw-template-argument-name, .cm-mw-template-bracket, .cm-mw-template-delimiter, .cm-mw-template-name { color: var(--codemirror-purple); } .cm-mw-templatevariable, .cm-mw-templatevariable-bracket, .cm-mw-templatevariable-delimiter, .cm-mw-templatevariable-name { color: var(--codemirror-red) } .cm-mw-parserfunction-bracket, .cm-mw-parserfunction-delimiter, .cm-mw-parserfunction-name { color: var(--codemirror-dark-red) } .cm-mw-exttag-attribute, .cm-mw-exttag-bracket, .cm-mw-exttag-name, .cm-mw-htmltag-attribute, .cm-mw-htmltag-bracket, .cm-mw-htmltag-name { color: var(--codemirror-green) } .cm-mw-link, .cm-mw-link-pagename { color: var(--wiki-content-link-color) } .cm-mw-link-tosection { color: var(--codemirror-blue) } .cm-mw-extlink, .cm-mw-extlink-bracket, .cm-mw-extlink-protocol, .cm-mw-free-extlink, .cm-mw-free-extlink-protocol, .cm-mw-link-bracket, .cm-mw-link-delimiter { color: var(--wiki-content-link-color) } .cm-mw-table-bracket, .cm-mw-table-definition, .cm-mw-table-delimiter { color: var(--codemirror-pink) } .cm-mw-matchingbracket { background-color: var(--wiki-content-background-color--secondary); box-shadow: inset 0 0 1px 1px var(--wiki-content-link-color); font-weight: bold; } /* VisualEditor: Fix broken toolbar layout */ .oo-ui-toolbar { clear: none; } .ve-init-mw-desktopArticleTarget-toolbar-open > .oo-ui-toolbar-bar > div:nth-child(4) { display: none; } .ve-ui-toolbar-floating > .oo-ui-toolbar-bar { top: var( --wikigg-header-height ); } .oo-ui-toolbar-bar .oo-ui-toolbar-bar, .ve-area-wrapper .oo-ui-toolbar-bar { background-color: var(--wiki-content-background-color--secondary); } .ve-init-mw-desktopArticleTarget-originalContent .content-body { clear: right; } /* fix a lot of empty space from TemplateData when using VE Source */ .tdg-editscreen-main.mw-body-content::after { display:none; } /************* * End editor * **************/ /**************** * Tabber styles * *****************/ .tabber__header { box-shadow: inset 0 -1px 0 0 var(--wiki-content-border-color); } .tabber__tab, .tabber__tab:visited { color:var(--wiki-content-text-color); } .tabber__tab:hover, .tabber__tab:hover:visited, .tabber__tab[aria-selected="true"], .tabber__tab[aria-selected="true"]:visited { color: var(--wiki-content-link-color); } .tabber__tab[aria-selected="true"] { box-shadow: 0 -2px 0 var(--wiki-content-link-color) inset; } .tabber__header__prev::after, .tabber__header__next::after { filter: var(--wiki-icon-general-filter); } /******************** * End Tabber styles * *********************/ /*************************************** * Various fixes for multi-theme Vector * ****************************************/ :focus, :focus-visible { outline-color:var(--wiki-accent-color) } :focus-visible { outline-style:solid; } .oo-ui-iconElement-icon { filter: var(--wiki-icon-to-link-filter); } .oo-ui-iconElement-icon.oo-ui-icon-reload { filter: brightness(0) var(--wiki-icon-to-link-filter); } fieldset { border-color:var(--wiki-content-border-color); } hr { background-color:var(--wiki-content-border-color); } .CategoryTreeToggle { color:var(--wiki-content-link-color); } input, select { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } input:hover, input:focus, input:active { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-accent-color); box-shadow: none; } input:focus-visible { outline: 1px solid var(--wiki-accent-color); } input::file-selector-button, input[type="button"], input[type="submit"] { background-color:var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .vector-body blockquote { border-color:var(--wiki-content-border-color); } /* category bar and filetoc */ .catlinks, ul#filetoc { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } /**/ body .ui-dialog .ui-widget-header { /* we need an important here because the built-in styles have one :( */ background: var(--wiki-content-background-color) !important; border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .ui-widget-header .ui-dialog-titlebar-close .ui-icon-closethick { filter: var(--wiki-icon-general-filter); } .ui-widget-header .ui-dialog-titlebar-close.ui-state-hover { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .ui-widget-content { background: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border: 1px solid var(--wiki-content-border-color); } body .ui-button { /* we need an important here because the built-in styles have one. Vector is a mess */ background: var(--wiki-accent-color) !important; border-color: var(--wiki-accent-color) !important; color: var(--wiki-accent-label-color); } body .ui-button:hover, body .ui-button:focus, body .ui-button:active { /* we need an important here because we had to use some above */ background: var(--wiki-accent-color--hover) !important; border-color: var(--wiki-accent-color--hover) !important; color: var(--wiki-accent-label-color); } .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { color: var(--wiki-accent-label-color); } #contentSub, #contentSub2 { color:var(--wiki-content-text-mix-color); } /* notifications ("your edit was saved", etc.) */ .mw-notification { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); } .mw-notification .oo-ui-labelElement-label { color:var(--wiki-content-text-color); } .mw-notification .oo-ui-iconElement-icon { filter:unset; } /**/ .mime-type.has-warning { color:var(--wiki-content-text-color); } .oo-ui-image-warning.oo-ui-icon-alert, .mw-ui-icon-alert-warning::before { filter:drop-shadow(0 0 3px #000); } .oo-ui-image-invert.oo-ui-icon-subtract, .mw-ui-icon-subtract-invert::before, .oo-ui-image-invert.oo-ui-icon-add, .mw-ui-icon-add-invert::before { filter:brightness(0) var(--wiki-icon-to-link-filter); filter:var(--wiki-icon-general-filter); } .mw_metadata td, .mw_metadata th { border-color: var(--wiki-content-border-color); } .mw_metadata th { background-color: var(--wiki-content-background-color--secondary); } .mw_metadata td { background-color: var(--wiki-content-background-color); } .mw-datatable td, .mw-datatable th { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } #mw-allmessagestable tbody:hover td, .mw-datatable tr:hover>td { background-color: var(--wiki-content-background-color--secondary); } #mw-allmessagestable .am_default { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 80%, transparent); color: var(--wiki-accent-label-color); } #mw-allmessagestable .am_actual, #mw-allmessagestable tbody:hover .am_default { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 60%, transparent); } #mw-allmessagestable .am_actual { color: var(--wiki-accent-label-color); } #mw-allmessagestable tbody:hover .am_actual { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .mw-datatable, .mw-json { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: inherit; } .mw-datatable>*>tr>th, .mw-datatable>tr>th, .mw-json>*>tr>th, .mw-json>tr>th { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); padding-bottom: 9px; padding-top: 9px; } .mw-datatable>*>tr>td, .mw-datatable>tr>td, .mw-json>*>tr>td, .mw-json>tr>td { border-color: var(--wiki-content-border-color); } .mw-json tr { background-color: inherit; } .mw-json .mw-json-single-value, .mw-json .mw-json-value, .mw-json .value { background: var(--wiki-success-color); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 60%, transparent); } .mw-json .mw-json-empty { background: var(--wiki-content-background-color--secondary); } .mw-message-box, .mw-message-box-warning { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); } .mw-message-box-warning { border-color: var(--wiki-warning-color); border-width: 1px 1px 1px 10px; } .wikitable *, .wikitable :after, .wikitable :before { -webkit-box-sizing: inherit; box-sizing: inherit; } .cargo-pagevalues-tableinfo { background-color: var(--wiki-content-background-color); border-bottom: 1px solid var(--wiki-content-border-color); top: 46px; position: static; /* override sticky in the built-in */ } .cargo-table-diagram .cargo-table-svg .node.entity-name rect { fill: var(--wiki-content-background-color--secondary); fill-opacity: 1; } .cargo-table-diagram .cargo-table-svg .node rect { stroke: var(--wiki-content-border-color); opacity: 1; } .cargo-table-diagram .cargo-table-svg .node text tspan { fill: var(--wiki-content-text-color); } table.cargoTable { color: var(--wiki-content-text-color); } table.cargoTable tbody td, table.cargoTable thead th { border: 1px solid var(--wiki-content-border-color); } table.cargoTable tr:hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 25%, transparent); } table.cargoTable thead tr:nth-child(odd), table.cargoTable.noMerge thead tr:nth-child(odd) { background-color: var(--wiki-accent-color); } table.cargoTable tbody tr:nth-child(2n), table.cargoTable.noMerge tbody tr:nth-child(2n) { background-color: var(--wiki-content-background-color); } table.cargoTable tbody tr:nth-child(odd), table.cargoTable.noMerge tbody tr:nth-child(odd) { background-color: var(--wiki-content-background-color--secondary); } table.cargoTable th.headerSort { color:var(--wiki-accent-label-color); } table.cargoTable th.headerSort:hover { color:var(--wiki-accent-label-color); text-decoration:underline; } table.cargoTable th.headerSort::after { background-color:var(--wiki-accent-link-color); } #mw-content-text div.cargoReplacementTableInfo { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); }.dataTables_wrapper .dataTables_length, .dataTables_wrapper .dataTables_filter, .dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_processing, .dataTables_wrapper .dataTables_paginate { color:var(--wiki-content-text-color); } table.dataTable tbody tr { background-color:var(--wiki-content-background-color); } table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 75%, transparent); } table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd, table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); } table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 { background-color:var(--wiki-content-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color) 75%, transparent); } table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover { background-color: var(--wiki-content-background-color--secondary); } .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active { /* we need this !important to override a built-in one */ color: var(--wiki-content-text-mix-color) !important; } table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td { border-top: 1px solid var(--wiki-content-border-color); } .dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { /* we need this !important to override a built-in one */ color: var(--wiki-content-mix-color) !important; border: 1px solid var(--wiki-content-border-color); background-color: var(--wiki-content-background-color); background: linear-gradient(to bottom,var(--wiki-content-background-color) 0%,var(--wiki-content-background-color--secondary) 100%); } div.drilldown-filters-wrapper { background-color: transparent; border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .action-pagevalues tr:nth-of-type(2n) { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); } .action-pagevalues tr:hover { background-image: linear-gradient(var(--wiki-accent-color), var(--wiki-accent-color)); /* fallback */ background-image: linear-gradient(color-mix(in srgb, var(--wiki-accent-color) 20%, transparent), color-mix(in srgb, var(--wiki-accent-color) 20%, transparent)); } div.specialCargoQuery-extraPane { background: var(--wiki-content-background-color); } .oo-ui-panelLayout-framed { border-color:var(--wiki-content-border-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button { background-color: transparent; } .oo-ui-inputWidget-input + .oo-ui-image-invert.oo-ui-icon-check { background-image:none; } .oo-ui-inputWidget-input:checked + .oo-ui-image-invert.oo-ui-icon-check::before { position:absolute; width:100%; height:100%; top:0; left:0; background-image: url(/load.php?modules=oojs-ui-core.icons&image=check&variant=invert&format=rasterized&skin=vector&version=y9f1k); background-image: linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E"); content:''; pointer-events: none; filter:var(--wiki-icon-general-filter); } .oo-ui-checkboxInputWidget [type="checkbox"] + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked + span { filter: unset; background-color: transparent; /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 5%, transparent); border-color: var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 75%, transparent); } .oo-ui-checkboxInputWidget [type="checkbox"]:disabled + span { background-color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:hover+span { border-color: var(--wiki-accent-color); filter: unset; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate+span { background-color: var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:focus+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:focus+span { box-shadow: none; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:active+span { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:focus+span { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); outline: 1px solid transparent; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:focus+span { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:hover+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:active+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:focus+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:hover+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:active+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:focus+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:hover+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:active+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:focus+span { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); border-color: var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:active + span { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent) } .oo-ui-image-invert.oo-ui-icon-check { background:none; position:relative; } .oo-ui-inputWidget-input:checked + .oo-ui-image-invert.oo-ui-icon-check::before { position:absolute; width:100%; height:100%; top:0; left:0; background-image: url(/load.php?modules=oojs-ui-core.icons&image=check&variant=invert&format=rasterized&skin=vector&version=y9f1k); background-image: linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E"); content:''; pointer-events: none; filter:var(--wiki-icon-general-filter); } .oo-ui-indicatorElement-indicator { filter: var(--wiki-icon-to-link-filter); } .oo-ui-tagItemWidget.oo-ui-widget-enabled:not(.oo-ui-tagItemWidget-fixed) { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-tagItemWidget.oo-ui-widget-enabled:hover { color: var(--wiki-content-text-color--hover); } .oo-ui-tagItemWidget.oo-ui-widget-enabled:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-tagItemWidget.oo-ui-widget-disabled { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) { border-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-savedLinksListWidget-placeholder.oo-ui-optionWidget .oo-ui-labelElement-label { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-savedLinksListWidget-menu .mw-rcfilters-ui-savedLinksListItemWidget { color: var(--wiki-content-text-color); padding: 8px 6px; -webkit-transition: color .3s, background-color .3s; transition: color .3s, background-color .3s; } .mw-rcfilters-ui-savedLinksListWidget-menu .mw-rcfilters-ui-savedLinksListItemWidget:hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); color: var(--wiki-accent-color); } .mw-rcfilters-ui-savedLinksListItemWidget-label { color: var(--wiki-accent-color); } .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined { background-color: transparent; } .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle { border-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle+.mw-rcfilters-ui-table, .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle.mw-rcfilters-ui-filterTagMultiselectWidget-emphasize { background-color: var(--wiki-content-background-color--secondary); } .mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget { border-color: var(--wiki-content-border-color); padding: 0; } .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-savedQueryTitle { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button>.oo-ui-labelElement-label { color: var(--wiki-content-link-color); } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button>.oo-ui-labelElement-label:hover { color: var(--wiki-content-link-color--hover); } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button:before { content: "["; } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button:after { content: "]"; } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive>.oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-dynamic-color--inverted); } .mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .mw-rcfilters-ui-filterMenuSectionOptionWidget { background-color: var(--wiki-content-background-color); } .oo-ui-menuSelectWidget { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-text-mix-color); } .mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-filterMenuHeaderWidget-header { background-color: var(--wiki-content-background-color); border-bottom-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-filterMenuHeaderWidget-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) { border-bottom-color: var(--wiki-content-text-mix-color); } .mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces { border-top-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-title, .mw-rcfilters-ui-itemMenuOptionWidget:hover, .mw-rcfilters-ui-itemMenuOptionWidget:hover .mw-rcfilters-ui-itemMenuOptionWidget-label-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span, .mw-rcfilters-ui-itemMenuOptionWidget:hover .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span { border-color: var(--wiki-accent-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected, .mw-rcfilters-ui-itemMenuOptionWidget:hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent) } .mw-rcfilters-ui-itemMenuOptionWidget-excludeLabel, .mw-rcfilters-ui-itemMenuOptionWidget-label-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget-label-desc { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected:hover, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected):hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-title, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) .mw-rcfilters-ui-itemMenuOptionWidget-label-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-desc { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-desc, .mw-rcfilters-ui-itemMenuOptionWidget:hover .mw-rcfilters-ui-itemMenuOptionWidget-label-desc, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) .mw-rcfilters-ui-itemMenuOptionWidget-label-desc { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span { border-color: var(--wiki-content-text-color); } .mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .oo-ui-tagItemWidget.oo-ui-widget-enabled, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled { background-color: transparent; color: var(--wiki-content-text-color); border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled.selected { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); border-color: var(--wiki-accent-color); } .mw-rcfilters-ui-datePopupWidget { border-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .mw-changeslist-legend, .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } @keyframes fadeBlue { 60% { border-top-color:var(--wiki-accent-color); } 100% { border-top-color:var(--wiki-content-border-color); } } .mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator { border-top-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-menuSelectWidget-footer { background-color: var(--wiki-content-text-mix-color-95); } .mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-text-color) 10%, transparent); } .oo-ui-iconElement-icon.mw-rcfilters-ui-filterItemHighlightButton-circle { filter:unset; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .mw-rcfilters-ui-tagItemWidget-selected.oo-ui-tagItemWidget.oo-ui-widget-enabled { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); border-color:var(--wiki-accent-color); } .mw-rcfilters-ui-tagItemWidget.oo-ui-flaggedElement-muted.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-labelElement-label { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 76%, transparent); } .mw-rcfilters-ui-tagItemWidget-popup-content { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 75%, transparent); } /* fix for weird focus box on recentchanges arrows when clicking, but keep it for tab navigation */ .mw-enhancedchanges-checkbox:focus + * .mw-enhancedchanges-arrow { outline:none; } .mw-enhancedchanges-checkbox:focus-visible + * .mw-enhancedchanges-arrow { outline:1px solid var(--wiki-accent-color); } /**/ .oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before { border-top-color: var(--wiki-content-border-color); } .oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after { border-top-color: var(--wiki-content-background-color--secondary); } .unpatrolled { color: var(--wiki-alert-color); } .autocomment, .autocomment a, .autocomment a:visited { color: var(--wiki-content-text-mix-color); } /* Recent changes filter highlighting */ .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c1, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c1 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c1.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c1.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #1c283f; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c2, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c2 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c2.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c2.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #0f3128; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c3, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c3 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c3.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c3.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #352c10; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c4, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c4 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c4.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c4.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #411d0c; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c5, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c5 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c5.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c5.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #3f0f0f; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined { background-color: transparent; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); -webkit-transition: border-color 300ms, box-shadow 300ms; transition: border-color 300ms, box-shadow 300ms; background-color: var(--wiki-content-background-color--secondary) } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-tagMultiselectWidget-focus .oo-ui-tagMultiselectWidget-handle { box-shadow: inset 0 0 0 1px var(--wiki-accent-color); border-color: var(--wiki-accent-color); outline: 0 } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined:hover .oo-ui-tagMultiselectWidget-handle { border-color: var(--wiki-accent-color) } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-flaggedElement-invalid .oo-ui-tagMultiselectWidget-handle, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-flaggedElement-invalid:hover .oo-ui-tagMultiselectWidget-handle { border-color: var(--wiki-alert-color) } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagMultiselectWidget-handle { background-color: var(--wiki-content-background-color--secondary); border-bottom-width: 0; border-bottom-left-radius: 0; border-bottom-right-radius: 0 } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-inputWidget-input { border-radius: 0; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input { border-color: var(--wiki-alert-color); } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input { color: var(--wiki-alert-color); } .oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-handle { opacity: 0.5; } .oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group > input { color:var(--wiki-content-text-color); } .oo-ui-tagMultiselectWidget .oo-ui-inputWidget-input { color: inherit; background: transparent; font-family: inherit; } .oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle, .oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input, .oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle { background: var(--wiki-content-text-mix-color-95); color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 25%, transparent); text-shadow:none; border-color:var(--wiki-content-text-mix-color); } .oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder { color:var(--wiki-content-text-mix-color); } .oo-ui-dropdownInputWidget select { border-color:var(--wiki-content-border-color); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus { border-color:var(--wiki-accent-color); box-shadow:inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover { background-color: var(--wiki-content-text-mix-color-95); background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 95%, var(--wiki-content-dynamic-color)); border-color: var(--wiki-content-border-color); border-color: color-mix(in srgb, var(--wiki-content-border-color) 95%, var(--wiki-content-dynamic-color)); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); border-color: #0006; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip { background-color: var(--wiki-accent-color); background-color: color-mix(in srgb, var(--wiki-accent-color) 90%, var(--wiki-content-dynamic-color)); border-color: #0006; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip { background-color: var(--wiki-accent-label-color); border-color: #0006; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip { border-color: var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); box-shadow: inset 0 0 0 1px var(--wiki-accent-color--hover); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip { background-color: var(--wiki-accent-label-color); border-color: var(--wiki-accent-label-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus { border-color: var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before { border-color: var(--wiki-accent-label-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-disabled { background-color: var(--wiki-content-text-mix-color-95); border-color: var(--wiki-content-text-mix-color-95); } .oo-ui-toggleSwitchWidget.oo-ui-widget-disabled.oo-ui-toggleWidget-off .oo-ui-toggleSwitchWidget-grip { border-color: var(--wiki-content-dynamic-color--inverted); box-shadow: inset 0 0 0 1px var(--wiki-content-dynamic-color--inverted); } .oo-ui-outlineOptionWidget.oo-ui-optionWidget-selected, .oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-link-color); } .oo-ui-labelWidget.oo-ui-inline-help { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .oo-ui-progressBarWidget:not(.oo-ui-pendingElement-pending){ background-color: var(--wiki-content-background-color); border-color: var(--wiki-accent-color); box-shadow:0 1px 1px var(--wiki-content-dynamic-color); /* fallback */ box-shadow: 0 1px 1px color-mix(in srgb, var(--wiki-content-dynamic-color) 15%, transparent); } .oo-ui-progressBarWidget.oo-ui-widget-enabled .oo-ui-progressBarWidget-bar { background-color:var(--wiki-accent-color); } .oo-ui-bookletLayout-outlinePanel { padding: 7px 0; } .oo-ui-processDialog-content .oo-ui-window-head, .oo-ui-processDialog-content .oo-ui-window-foot, .oo-ui-messageDialog-content > .oo-ui-window-head, .oo-ui-messageDialog-content > .oo-ui-window-foot { outline-color: var(--wiki-content-border-color); } .oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget { border-right-color: var(--wiki-content-border-color); } .oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) > .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-background-color); border-right-color: var(--wiki-content-border-color); } .oo-ui-messageDialog-title { color: var(--wiki-heading-color); } /* OAuth authorisation dialog */ #mw-mwoauth-authorize-form { color: inherit; } .oo-ui-toolbar-bar, .oo-ui-popupToolGroup-tools, .oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover { background-color:var(--wiki-content-background-color--secondary); color:var(--wiki-content-text-color); } .oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover { border-right-color:var(--wiki-content-border-color); } .oo-ui-menuToolGroup-tools .oo-ui-tool.oo-ui-tool-active, .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link, .oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { background-color: var(--wiki-content-background-color); color: var(--wiki-content-link-color); } .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link { /* we remove the transition here because it causes the hard-coded color to flash briefly */ transition:none; } .oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover { color:var(--wiki-accent-color); } .oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title { color:var(--wiki-accent-color); } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover, .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:active { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); } .oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus { box-shadow:inset 0 0 0 2px var(--wiki-accent-color); } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus, .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus, .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus { outline:1px solid var(--wiki-accent-color); box-shadow:inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-menuToolGroup, .oo-ui-popupToolGroup-tools { border-color:var(--wiki-content-border-color); } .oo-ui-toolbar-position-top > .oo-ui-toolbar-bar { border-color: var(--wiki-content-border-color); box-shadow:0 1px 1px 0 var(--wiki-content-dynamic-color--secondary--inverted); /* fallback */ box-shadow: 0 1px 1px 0 color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); } .oo-ui-barToolGroup-tools.oo-ui-toolGroup-enabled-tools .oo-ui-tool.oo-ui-widget-disabled.oo-ui-flaggedElement-primary > .oo-ui-tool-link, .oo-ui-barToolGroup-tools.oo-ui-toolGroup-disabled-tools .oo-ui-tool.oo-ui-flaggedElement-primary > .oo-ui-tool-link { background-color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link { background-color:var(--wiki-accent-color); color:var(--wiki-accent-label-color); } .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover { background-color:var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-frameless>.oo-ui-buttonElement-button, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { color: var(--wiki-content-text-color--hover); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { color: var(--wiki-content-text-color--hover); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive>.oo-ui-buttonElement-button, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button{ color: var(--wiki-alert-color); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled>.oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled>.oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled>.oo-ui-buttonElement-button:focus { color: var(--wiki-alert-color--hover); } .oo-ui-buttonElement-frameless>.oo-ui-buttonElement-button { border: 1px solid transparent; } .oo-ui-buttonElement-frameless>button.oo-ui-buttonElement-button { color: inherit; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color),inset 0 0 0 2px var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { background-color: #bf0017; border-color: #bf0017; color: #fff; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: #59000b; border-color: #59000b; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus { box-shadow: inset 0 0 0 1px var(--wiki-accent-color--hover),inset 0 0 0 2px var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button{ background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-link-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { color: var(--wiki-accent-color); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color:var(--wiki-content-link-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-link-color) 8%, transparent); color: var(--wiki-content-text-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color:var(--wiki-content-link-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-link-color) 90%, transparent); border-color:var(--wiki-content-link-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-link-color) 90%, transparent); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { background-color: transparent; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-dynamic-color--inverted); } .oo-ui-buttonSelectWidget.oo-ui-widget-enabled:focus .oo-ui-buttonOptionWidget.oo-ui-optionWidget-selected .oo-ui-buttonElement-button { border-color: var(--wiki-accent-color--hover); box-shadow: inset 0 0 0 1px var(--wiki-accent-color--hover),inset 0 0 0 2px var(--wiki-accent-label-color); } .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(2n) td, .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-popupWidget-popup { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color:var(--wiki-content-text-color); } .mw-advancedSearch-namespace-selection { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .mw-advancedSearch-fieldContainer { background: var(--wiki-content-background-color); border: 1px solid var(--wiki-content-border-color); } .mw-advancedSearch-fieldContainer fieldset { border-color: var(--wiki-content-border-color); margin-top: 0; } .mw-advancedSearch-fieldContainer .oo-ui-labelElement > .oo-ui-fieldsetLayout-header > .oo-ui-labelElement-label { all: unset; } .mw-advancedSearch-expandablePane-button.oo-ui-widget-enabled.oo-ui-buttonWidget > .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); color: var(--wiki-content-text-color); } .mw-advancedSearch-expandablePane-button.oo-ui-widget-enabled.oo-ui-buttonWidget.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-popupWidget-popup .mw-advancedSearch-tooltip-head { color: var(--wiki-content-text-mix-color); } .oo-ui-menuSectionOptionWidget { color: var(--wiki-content-text-mix-color); } /* possibly deprecated */ .mw-ui-button:not(:disabled) { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color: var(--wiki-accent-color); border-color: var(--wiki-content-border-color); } .mw-ui-button:not(:disabled):visited { color: var(--wiki-accent-color); } .mw-ui-button:not(:disabled):hover { background-color: var(--wiki-content-text-mix-color-95); border-color: var(--wiki-content-border-color); color: var(--wiki-accent-color--hover); } .mw-ui-button:not(:disabled):focus { border-color: var(--wiki-accent-color); color: var(--wiki-content-text-color); box-shadow: none; } .mw-ui-button:not(:disabled):active, .mw-ui-button:not(:disabled).is-on { background-color: var(--wiki-content-background-color); color: var(--wiki-content-dynamic-color); border-color: var(--wiki-content-link-color); } /* end possibly deprecated */ .mw-ui-icon-before::before { filter: var(--wiki-icon-to-link-filter); } .oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame { background-color: var(--wiki-content-background-color); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); } .oo-ui-windowManager-modal>.oo-ui-dialog { background-color:var(--wiki-content-dynamic-color--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 50%, transparent); } .oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame { border-color:var(--wiki-content-border-color); } .oo-ui-messageDialog-message { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-framed:not(.oo-ui-flaggedElement-primary):not(.oo-ui-buttonElement-active) > .oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-framed.oo-ui-widget-disabled:not(.oo-ui-flaggedElement-primary):not(.oo-ui-buttonElement-active) > .oo-ui-buttonElement-button { color: var(--wiki-content-text-mix-color-95); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button { color: var(--wiki-accent-color); border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color); box-shadow: inset 0 0 3px var(--wiki-accent-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-link-color--hover); border-color: var(--wiki-content-link-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-disabled.oo-ui-flaggedElement-primary > .oo-ui-buttonElement-button { background-color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .tdg-templateDataParamWidget-param-description { color: var(--wiki-content-text-mix-color); } .oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block), .mw-body-content .error { color: var(--wiki-alert-color); } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-alert-color); border-left-width: 10px; } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-success-color); border-left-width: 10px; } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-text-mix-color); } .tdg-templateDataParamWidget-param-alias { color: var(--wiki-content-text-mix-color); background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } .tdg-templateDataParamWidget-param-alias:first-child { background-color: var(--wiki-content-background-color--secondary); } .mw-templatedata-doc-muted { color: var(--wiki-content-text-mix-color); } .oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) > .oo-ui-buttonElement-button:active { background-color: var(--wiki-content-background-color--secondary); border-right-color: var(--wiki-accent-color); } /* Date picker */ .mw-widget-dateInputWidget-handle { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover { border-color: var(--wiki-accent-color); box-shadow: none; } .mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle > .oo-ui-labelElement-label { color: var(--wiki-content-text-color); } .mw-widget-calendarWidget { border-color: var(--wiki-content-border-color); } .mw-widget-calendarWidget:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .mw-widget-dateInputWidget-calendar { background-color: var(--wiki-content-background-color); } .mw-widget-dateInputWidget-calendar:focus { box-shadow: inset 0 0 0 1px var(--wiki-accent-color),0 2px 2px 0 rgba(0,0,0,0.2); } .mw-widget-calendarWidget-header .oo-ui-labelElement-label, .mw-widget-calendarWidget-day, .mw-widget-calendarWidget-month, .mw-widget-calendarWidget-year { color: var(--wiki-content-text-color); } .mw-widget-calendarWidget-day-heading, .mw-widget-calendarWidget-day-additional { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 55%, transparent); } .mw-widget-calendarWidget-day-today { box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .mw-widget-calendarWidget-item-selected { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 90%, transparent); color: var(--wiki-accent-label-color); } .mw-widget-calendarWidget-item:hover { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .mw-widgets-datetime-calendarWidget:focus { border-color: var(--wiki-content-border-color); box-shadow: none; } .mw-widgets-datetime-calendarWidget-grid { overflow-x: initial; } .mw-widgets-datetime-dateTimeInputWidget-handle { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-handle:hover { border-color: var(--wiki-content-border-color); } .mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover { background-color: var(--wiki-content-background-color); } .mw-widgets-datetime-calendarWidget { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } .mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 55%, transparent); } /* Unpatrolled page creations on Special:NewPages */ .not-patrolled { background-color:var(--wiki-warning-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 16%, transparent); } .mw-spinner-container > div::after { background-color:var(--wiki-content-text-color); } pre, code, .mw-code { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-templatedata-doc-param-alias { color:var(--wiki-content-text-mix-color); } .mw-highlight, .view-light .mw-highlight { --pygments-background:var(--wiki-content-background-color--secondary); /* fallback */ --pygments-background: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); --pygments-err: #db0000; --pygments-c: #3a7575; --pygments-k: #008000; --pygments-o: #666; --pygments-ch: #3a7575; --pygments-cm: #3a7575; --pygments-cp: #986200; --pygments-cpf: #3a7575; --pygments-c1: #3a7575; --pygments-cs: #3a7575; --pygments-gd: #a00000; --pygments-gr: #db0000; --pygments-gh: #000080; --pygments-gi: #008100; --pygments-go: #6e6e6e; --pygments-gp: #000080; --pygments-gu: #800080; --pygments-gt: #04d; --pygments-kc: #008000; --pygments-kd: #008000; --pygments-kn: #008000; --pygments-kp: #008000; --pygments-kr: #008000; --pygments-kt: #b00040; --pygments-m: #666; --pygments-s: #ba2121; --pygments-na: #647421; --pygments-nb: #008000; --pygments-nc: #00f; --pygments-no: #800; --pygments-nd: #a412ff; --pygments-ni: #6d6d6d; --pygments-ne: #c9352e; --pygments-nf: #00f; --pygments-nl: #727200; --pygments-nn: #00f; --pygments-nt: #008000; --pygments-nv: #19177c; --pygments-ow: #a412ff; --pygments-w: #6e6e6e; --pygments-mb: #666; --pygments-mf: #666; --pygments-mh: #666; --pygments-mi: #666; --pygments-mo: #666; --pygments-sa: #ba2121; --pygments-sb: #ba2121; --pygments-sc: #ba2121; --pygments-dl: #ba2121; --pygments-sd: #ba2121; --pygments-s2: #ba2121; --pygments-se: #a55a1e; --pygments-sh: #ba2121; --pygments-si: #af4d74; --pygments-sx: #008000; --pygments-sr: #af4d74; --pygments-s1: #ba2121; --pygments-ss: #19177c; --pygments-bp: #008000; --pygments-fm: #00f; --pygments-vc: #19177c; --pygments-vg: #19177c; --pygments-vi: #19177c; --pygments-vm: #19177c; --pygments-il: #666; } .view-dark .mw-highlight { --pygments-background:var(--wiki-content-background-color--secondary); /* fallback */ --pygments-background: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); --pygments-err: #fe4242; --pygments-c: #4b9797; --pygments-k: #00a300; --pygments-o: #898989; --pygments-ch: #4b9797; --pygments-cm: #4b9797; --pygments-cp: #c17d00; --pygments-cpf: #4b9797; --pygments-c1: #4b9797; --pygments-cs: #4b9797; --pygments-gd: #ff3f3f; --pygments-gr: #fe4242; --pygments-gh: #7a7aff; --pygments-gi: #00a000; --pygments-go: #8a8a8a; --pygments-gp: #7a7aff; --pygments-gu: #f500f5; --pygments-gt: #4e84fe; --pygments-kc: #00a300; --pygments-kd: #00a300; --pygments-kn: #00a300; --pygments-kp: #00a300; --pygments-kr: #00a300; --pygments-kt: #fe357e; --pygments-m: #898989; --pygments-s: #e25e5e; --pygments-na: #80932a; --pygments-nb: #00a300; --pygments-nc: #7a7afe; --pygments-no: #ff4040; --pygments-nd: #bf5aff; --pygments-ni: #999; --pygments-ne: #da655f; --pygments-nf: #7a7afe; --pygments-nl: #a0a000; --pygments-nn: #7a7afe; --pygments-nt: #00a300; --pygments-nv: #8381e7; --pygments-ow: #bf5aff; --pygments-w: #bbb; --pygments-mb: #898989; --pygments-mf: #898989; --pygments-mh: #898989; --pygments-mi: #898989; --pygments-mo: #898989; --pygments-sa: #e25e5e; --pygments-sb: #e25e5e; --pygments-sc: #e25e5e; --pygments-dl: #e25e5e; --pygments-sd: #e25e5e; --pygments-s2: #e25e5e; --pygments-se: #d07125; --pygments-sh: #e25e5e; --pygments-si: #c17492; --pygments-sx: #00a300; --pygments-sr: #c17492; --pygments-s1: #e25e5e; --pygments-ss: #8381e7; --pygments-bp: #00a300; --pygments-fm: #7a7afe; --pygments-vc: #8381e7; --pygments-vg: #8381e7; --pygments-vi: #8381e7; --pygments-vm: #8381e7; --pygments-il: #898989; } div.mw-highlight, .skin-theme-clientpref-night div.mw-highlight { background-color: var(--wiki-content-dynamic-color--inverted); margin: 0.5em 0; } .mw-highlight .err {border-color: var(--pygments-err);} .mw-highlight .c {color: var(--pygments-c);} .mw-highlight .k {color: var(--pygments-k);} .mw-highlight .o {color: var(--pygments-o);} .mw-highlight .ch {color: var(--pygments-ch);} .mw-highlight .cm {color: var(--pygments-cm);} .mw-highlight .cp {color: var(--pygments-cp);} .mw-highlight .cpf {color: var(--pygments-cpf);} .mw-highlight .c1 {color: var(--pygments-c1);} .mw-highlight .cs {color: var(--pygments-cs);} .mw-highlight .gd {color: var(--pygments-gd);} .mw-highlight .gr {color: var(--pygments-gr);} .mw-highlight .gh {color: var(--pygments-gh);} .mw-highlight .gi {color: var(--pygments-gi);} .mw-highlight .go {color: var(--pygments-go);} .mw-highlight .gp {color: var(--pygments-gp);} .mw-highlight .gu {color: var(--pygments-gu);} .mw-highlight .gt {color: var(--pygments-gt);} .mw-highlight .kc {color: var(--pygments-kc);} .mw-highlight .kd {color: var(--pygments-kd);} .mw-highlight .kn {color: var(--pygments-kn);} .mw-highlight .kp {color: var(--pygments-kp);} .mw-highlight .kr {color: var(--pygments-kr);} .mw-highlight .kt {color: var(--pygments-kt);} .mw-highlight .m {color: var(--pygments-m);} .mw-highlight .s {color: var(--pygments-s);} .mw-highlight .na {color: var(--pygments-na);} .mw-highlight .nb {color: var(--pygments-nb);} .mw-highlight .nc {color: var(--pygments-nc);} .mw-highlight .no {color: var(--pygments-no);} .mw-highlight .nd {color: var(--pygments-nd);} .mw-highlight .ni {color: var(--pygments-ni);} .mw-highlight .ne {color: var(--pygments-ne);} .mw-highlight .nf {color: var(--pygments-nf);} .mw-highlight .nl {color: var(--pygments-nl);} .mw-highlight .nn {color: var(--pygments-nn);} .mw-highlight .nt {color: var(--pygments-nt);} .mw-highlight .nv {color: var(--pygments-nv);} .mw-highlight .ow {color: var(--pygments-ow);} .mw-highlight .w {color: var(--pygments-w);} .mw-highlight .mb {color: var(--pygments-mb);} .mw-highlight .mf {color: var(--pygments-mf);} .mw-highlight .mh {color: var(--pygments-mh);} .mw-highlight .mi {color: var(--pygments-mi);} .mw-highlight .mo {color: var(--pygments-mo);} .mw-highlight .sa {color: var(--pygments-sa);} .mw-highlight .sb {color: var(--pygments-sb);} .mw-highlight .sc {color: var(--pygments-sc);} .mw-highlight .dl {color: var(--pygments-dl);} .mw-highlight .sd {color: var(--pygments-sd);} .mw-highlight .s2 {color: var(--pygments-s2);} .mw-highlight .se {color: var(--pygments-se);} .mw-highlight .sh {color: var(--pygments-sh);} .mw-highlight .si {color: var(--pygments-si);} .mw-highlight .sx {color: var(--pygments-sx);} .mw-highlight .sr {color: var(--pygments-sr);} .mw-highlight .s1 {color: var(--pygments-s1);} .mw-highlight .ss {color: var(--pygments-ss);} .mw-highlight .bp {color: var(--pygments-bp);} .mw-highlight .fm {color: var(--pygments-fm);} .mw-highlight .vc {color: var(--pygments-vc);} .mw-highlight .vg {color: var(--pygments-vg);} .mw-highlight .vi {color: var(--pygments-vi);} .mw-highlight .vm {color: var(--pygments-vm);} .mw-highlight .il {color: var(--pygments-il);} .mw-highlight pre { background: var(--pygments-background); margin: 0; } .mw-content-ltr.mw-highlight-lines pre, .mw-content-ltr.content .mw-highlight-lines pre { padding-left: 3.5em; box-shadow: inset 2.75em 0 0 var(--wiki-content-dynamic-color--inverted); } .mw-highlight .hll { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent) } .mw-apisandbox-toolbar { background: var(--wiki-content-background-color--secondary); top: var( --wikigg-header-height ); } /* special:replacetext */ .ext-replacetext-searchoptions { background-color: transparent; border: 1px solid var(--wiki-content-border-color); } .ext-replacetext-searchoptions .ext-replacetext-divider { border-bottom: 1px solid var(--wiki-content-border-color); } /**/ .view-dark textarea { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .view-dark textarea:focus-visible { outline-color: var(--wiki-accent-color); outline-style: solid; } .oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus { outline: 1px solid var(--wiki-accent-color); } /* make math formulas legible on dark theme */ .mwe-math-fallback-image-inline, .mwe-math-fallback-image-display, .ve-ui-mwLatexPage-symbol { filter: var(--wiki-icon-general-filter); } /* search bar */ #searchInput { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); box-shadow: none; } #searchInput:focus, #simpleSearch:hover #searchInput, #simpleSearch:hover #searchInput:focus { border-color: var(--wiki-accent-color); box-shadow: none; } #searchButton { filter: var(--wiki-icon-to-link-filter); } .vector-search-box-input::placeholder { color:var(--wiki-content-text-mix-color); } /* Search suggestions */ .suggestions-results, .suggestions-special { background-color: var(--wiki-content-background-color--secondary); } .suggestions a.mw-searchSuggest-link, .suggestions a.mw-searchSuggest-link:hover, .suggestions a.mw-searchSuggest-link:active, .suggestions a.mw-searchSuggest-link:focus { color: var(--wiki-content-text-color); } .suggestions-result { color: var(--wiki-content-link-color); } .suggestions-result-current { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .suggestions-special .special-label { color: var(--wiki-content-text-mix-color); } .suggestions-special.suggestions-result-current .special-label { color:var(--wiki-accent-label-color); } .suggestions-special .special-query { color: var(--wiki-link-label-color); } /* search page */ fieldset#mw-searchoptions { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); border-color: var(--wiki-content-border-color); } #mw-searchoptions .divider { border-color: var(--wiki-content-border-color); } .mw-search-profile-tabs { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); border: 1px solid var(--wiki-content-border-color); margin-top: 1em; } .mw-search-profile-tabs div.search-types ul li.current a { color: var(--wiki-content-text-color); } .results-info, .mw-search-result-data { color: var(--wiki-content-text-mix-color); } /**/ /* Login/register page */ .mw-number-text { color:var(--wiki-content-text-mix-color); } .mw-body-content .mw-number-text h3 { color:var(--wiki-heading-color); } .mw-number-text.icon-edits, .mw-number-text.icon-pages, .mw-number-text.icon-contributors { position:relative; background:none; } .mw-number-text.icon-edits::before, .mw-number-text.icon-pages::before, .mw-number-text.icon-contributors::before { position:absolute; width:95px; height:100%; left:0; top:0; content:''; filter:brightness(0) var(--wiki-icon-general-filter); } .mw-number-text.icon-edits::before { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABLCAYAAADnAAD1AAACrUlEQVR4AWL4//8/oH170LEsiKIwXGPbtm0EY9s2g7bdjzh4oVnjyslKVZ3hSu+d5L/c0Xdx/Bt5jjCyAR3QAd9/+DhSW4oeoYmJGQdM4HWjYfQKTXTA8pZFeIgjOmA5Hkd0wDwe6TWa6IAcr4eA5RAdEC0neKWIDoieFcMRRPOAaDJ6+4uITxzwJ+KbmnjdaKkDliISPIv/gcvRxsT7kzgix7MGuBz1ooFyRIq3xOJ64ArUG0EMoMV5RI5nAJDjRV1Go1DIIL7meJKAAngc8Qn/tgoACuCNRtfRJhQyGQLkeJcI3u3oP3GzA5bjjYnwEEE0Acjx+urgEcRNVgFX1sUjdaHF9gA53sW/jScFKIC3SH8hIo5nDXAVwbtA8O6U4+kD6uPpA2rhWQNcXYh3N4HXSfAMAHK8838BTwBQF28hCpKAAnj3SvCsAa4heOdU8NQB5fGUAfXxhAEZ3lmCdz+B18Hx9ABN46kBrv1DeAtQsAZYivdAB08AMMLrJ3hBHU8BkOGdqcyMLcCbj4I1QH08YUCGd0kbTwCQ4MW1oFkR3kM5PAHAdVU8gjhPEk8AkOKRBjN481AwAxjhDRCM4Rq1EzwTgAzvGtoqiicAmMcbjRZI4wkATiP/eVe/4QU0DvXJ4gkAHq9gNEV4cdPRRtQjgycAOA51VkAOoECaiF5J4QkA7iVnuI+vgTcXBauAo1BjBeU0mZuCXlfm2gieOcCN5KzPadH7s9EF1CeJJwD4lKy2BLQM3UFDaFgSTwBwKcE5il6Q1wmeA95KQLGafuI54Ay+I4D2Fm1HY2QwBADPZdCG0EO0Wg5CAHAi6k1ce3E1fdDHAQ8TuG50Ml6F4TngGNQawTWjg2iCPoAG4I5vcG/QVrLDIJMDnvyNBYMDeg7ogA7ogJ4DOqBmnwD4A/itR9A4HwAAAABJRU5ErkJggg==) no-repeat left center; } .mw-number-text.icon-pages::before { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABLCAYAAADnAAD1AAAByUlEQVR4Ae3XQ6JcQRhH8Rs7mYWT2LZt25rEtpNvicGCOid51lWhX3X/B78F1ClnjUZDHChCDgVUQAVUwF+//zTbaEzwJKuqFQJOwVOYB0fSDege8RnMg8OxA47HhMhGho4YM+BHWGTXMApZP1NxAqdKuIS3DhETC5gT0cEonM+LmH7A8BHHF4zhUMyAr3DKswt4ARvCVQ8RL8FyHIoV8DqyAEbidMCIu2AFDqUbEBiLd4EiroOVcDDdgMBJWI4rNSOugpV0MOWAa2EBIq6HVXAw1YDzYQEiboVVdCDFgLNhASIegtWwP7WAM2AVXC4Z8SKsho+pBZwDCxDxIZ7hGo5iN7ZgG/bjOj61QsB5sAARxyArMA7nUw+4GuYQcaSHv/PrlAPuhDnYh8zR9ZQDnoF1+ooXuI87uIvH+JoT8ES7B1yJxZiGETnbbAHuKqCbkbiqgG5mK6Cb8QqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogG0acAwmVHRLAXschDlQQAVUwKYGXIZTDo7qFnakgAqogP4ooAK+waVh5GpSAROggAqogFKOAiqgAiqg/AUjJ7hc1MT1egAAAABJRU5ErkJggg==) no-repeat left center } .mw-number-text.icon-contributors::before { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAAAtCAYAAAA5reyyAAAEMElEQVR4AWJ4/uLFYMJsgHbtIVhzLQqg8G7btm3bfLZt2/abtG3btm3btt19tXuNU5UbnV9VPfj2PCtODh7DaOzHDdzEIQxFG6SERItoilcPq6EOpqNsrAdMiWb4CQPQEx+jMsSH13Ad6tJRtIf4UBkfoyf642c0Q8pwBSyOEYiDWpzHP8gIcelZ3IV6dBENIS5lxD84D7WIwwgUD3XActjk8jTLDnFQAiegPm1FFoiD7JgKdbAJ5UIVMA0WQ10aCnEwHBrQ/xAHQ6EuLULqUAT8EurRkxAbtXEWGtBu5IPYeBLq0RemA6bDUqhHwyE2/oIa8qHho3wp0pkM2AS3oR4dRCmIFWZADRkEsUIpHIR6dBtNTAZ8DepDEhpDLIphL9Q9X0dMYyRBfXjNZMD3oT61hFjUwHmoITtQAGLREurT+yYDvgn1IQ4NwhBwP0pALBogDurDmyYDPgL14QjKQCzK43gYjsAyOAL14RGTAcvhKNSjWUgLsciDzVBDliG9zceJWT53fFlzAYGJUI/+g9iYCjVkBMTGv1CPJkJMB/wM6sEdtILY6Aw15A+IjVa4A/Xgs1C9ym2AujQVkoznkQgN6CpaQAwd7euQynxA4EMkuTz6noAkIxu2QQNaAXHwhMujMAkfhvpz1gSogwEQF/pAA/oV4sIAqIPxkFAHLIwVUBuLkQ/iQkNchPp0BHkhLuTDYocjuVDoAwLNobCKx7MQZ0buxn9CPHgO8VBYNYOEI2AxTIPaWI3SEJdq47rPz1jZIC6VxmqHm17RUAYsjm+wB+rgDH5FZYgL/0M9egjiQmX8hjNQB3vwDYqZClgRn2I8TkM9uoxp+BY1IDayYAnUpd8hyaiBbzEdl6EencZ4fIoKXgPWQ0eswTmoIRexCz9DYFUWh6AOeiEFBFYfYYv7aK6cxRp0RL3kAjbBSsRBQ+gwykBg1SrAF+5qOAUNoTisRBNrwHeQAA2D7hAbLQL+qOoBDYMEvA0RRm3cg4bQIYxBO4iNnFgOdfAoJBntMAaHoSF0D7WtbwOmJGIHBuFtFHJxhx8HdeEEnoI4KIS3MQg7kAg1rI8w9kMN2YQ/8RByQRwUxE844GPvj0B9iAu58BD+NPwdcp8wrkEDOoG3kR3iIC0exhAcgQZwHQvwOfJDXMiOt3ECGtA1EwH3oDLERgoUxisYhv24AzUoEWexCD+iJtJBklEF+yId8A7aQywyoCK+xCJcRSI0TO5iL7qjDXIjBcTiIdwNGnAetmKjR8fQHdYL93tYiSRolDiJzqgLseiOYz62fyvmCcOUJ3EAGuV6oUi0rVD9BBpDtqJstARsj3hojFmBdNEQcDw0Rn0V6YAVcBIao2YjXSQDtoDGsDOoFMmAD0FjXLMHAYN5KJIBW+FBwADq4x40hrWLZMCKOIhEXIsxd3EdDSF+3QeCfPkMAgchOAAAAABJRU5ErkJggg==) no-repeat left center } /**/ /* Multimedia viewer */ .mw-mmv-post-image, .mw-mmv-image-metadata { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis { box-shadow: -4px 6px 0 0 var(--wiki-content-background-color); } .mw-mmv-title-para .mw-mmv-ttf-ellipsis { background-color: var(--wiki-content-background-color); } .mw-mmv-title-para .mw-mmv-ttf-ellipsis::before { background-image: linear-gradient(to right, transparent 0%, var(--wiki-content-background-color) 100%); } .mw-mmv-ttf-ellipsis-container:hover .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis { background-color: var(--wiki-content-background-color--secondary); } .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis:hover, .mw-mmv-ttf-ellipsis-container .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis:hover { background-color: var(--wiki-content-text-mix-color-95); background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 95%, var(--wiki-content-dynamic-color)); } .mw-ui-button.mw-ui-progressive:not(:disabled) { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .mw-ui-button.mw-ui-progressive:not(:disabled):hover { background-color: var(--wiki-accent-color--hover); } .skin-vector .mw-ui-button.mw-ui-progressive:hover, .skin-vector .mw-ui-button.mw-ui-primary:disabled { box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.75) inset, 0 0 5px var(--wiki-content-border-color); border: 2px solid var(--wiki-content-border-color); } .mw-ui-button.mw-ui-progressive:not(:disabled):active, .mw-ui-button.mw-ui-progressive:not(:disabled).is-on { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .mw-ui-button.mw-ui-progressive { box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.75) inset, 0 0 5px var(--wiki-content-border-color) } /* possibly deprecated */ .mw-ui-input:not(:disabled) { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-ui-input:not(:disabled):hover, .mw-ui-input:not(:disabled):focus { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-accent-color); box-shadow: none; } .mw-ui-input::placeholder { color:var(--wiki-content-text-mix-color); } /* end possibly deprecated */ .mw-mmv-dialog { background-color: var(--wiki-content-background-color); box-shadow: 0 2px 2px 0 var(--wiki-content-border-color); } .mw-mmv-dialog .mw-mmv-dialog-down-arrow { background-color: var(--wiki-content-background-color); } .mw-mmv-options-dialog-header { color: var(--wiki-content-text-color); } .mw-mmv-options-text-header, .mw-mmv-options-text-body { color: var(--wiki-content-text-mix-color); } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-select-menu { background-image: none; } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-select-menu span { display: none; } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-select-menu::after { display:inline-block; width:8px; height:100%; content:''; --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22 viewBox=%220 0 12 12%22%3E %3Cpath fill=%22%23000%22 fill-rule=%22evenodd%22 d=%22m2.023 3 3.49 5.953L9 3z%22 clip-rule=%22evenodd%22/%3E %3C/svg%3E") no-repeat; --mask-size: 12px; --mask-position: center; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: var(--mask-size); mask-size: var(--mask-size); -webkit-mask-position: var(--mask-position); mask-position: var(--mask-position); background-color: currentColor; } .mw-mmv-embed-dimensions { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 76%, transparent); } .oo-ui-optionWidget-selected .mw-mmv-embed-dimensions { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 82%, transparent); } .mw-mmv-download-pane .mw-mmv-download-attribution { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-mix-color); } .mw-mmv-download-pane .mw-mmv-download-attribution:hover { background-color: var(--wiki-content-dynamic-color--inverted); color: var(--wiki-content-text-color); } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-preview-link, .mw-mmv-download-pane .mw-mmv-download-attribution-cta-invite { color: var(--wiki-content-text-mix-color); } .mw-ui-button.mw-ui-quiet, .mw-ui-button.mw-ui-quiet.mw-ui-progressive, .mw-ui-button.mw-ui-quiet.mw-ui-destructive { color: var(--wiki-accent-color); } .mw-ui-button.mw-ui-progressive:not(:disabled):focus { box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 1), inset 0 0 0 2px var(--wiki-accent-color); } input[type="checkbox"]:active+.mw-ui-button.mw-ui-quiet, input[type="checkbox"]:active+.mw-ui-button.mw-ui-quiet.mw-ui-progressive, input[type="checkbox"]:active+.mw-ui-button.mw-ui-quiet.mw-ui-destructive, .mw-ui-button.mw-ui-quiet:active, .mw-ui-button.mw-ui-quiet.mw-ui-progressive:active, .mw-ui-button.mw-ui-quiet.mw-ui-destructive:active, input[type="checkbox"]:focus+.mw-ui-button.mw-ui-quiet, input[type="checkbox"]:focus+.mw-ui-button.mw-ui-quiet.mw-ui-progressive, input[type="checkbox"]:focus+.mw-ui-button.mw-ui-quiet.mw-ui-destructive, .mw-ui-button.mw-ui-quiet:focus, .mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus, .mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus { color: var(--wiki-content-text-color); } /**/ /* Echo */ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-optionWidget-selected > .oo-ui-buttonElement-button:hover { color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { color: var(--wiki-content-text-color); } @-webkit-keyframes unseen-fadeout-to-unread { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color--secondary); } } @keyframes unseen-fadeout-to-unread { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color--secondary); } } @-webkit-keyframes unseen-fadeout-to-read { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color); } } @keyframes unseen-fadeout-to-read { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color); } } .oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before { border-bottom-color: var(--wiki-content-border-color); } .oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after { border-bottom-color: var(--wiki-content-background-color--secondary); } .client-js .mw-echo-special-nojs { filter:var(--wiki-icon-general-filter) } /**/ /* codex fixes */ .cdx-checkbox__icon { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb,var(--wiki-accent-color) 5%,transparent); } /**/ /************************* * End Vector theme fixes * **************************/ /************************ * Theme-based Scribunto * *************************/ #mw-scribunto-input { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-scribunto-console-fieldset, .mw-scribunto-message, .mw-scribunto-input, .mw-scribunto-error, .mw-scribunto-print, .mw-scribunto-normalOutput { background: transparent; } .mw-scribunto-console-fieldset { color: var(--wiki-content-text-color); } .mw-scribunto-message { color: var(--wiki-content-text-color); } .mw-scribunto-input { color: var(--wiki-content-text-color--hover); } .mw-scribunto-error { color: var(--wiki-alert-color); } .mw-scribunto-print { color: var(--wiki-content-text-color); } .mw-scribunto-normalOutput { color: var(--wiki-content-text-color); } /**************** * End Scribunto * *****************/ /*************************** * Theme-based VisualEditor * ****************************/ .ve-activated .vector-menu-tabs .selected { box-shadow:inset 0 -1px 0 var(--wiki-content-border-color); /* fallback */ box-shadow: inset 0 -1px 0 color-mix(in srgb, var(--wiki-content-border-color) 50%, transparent); } .ve-init-mw-progressBarWidget { background-color: var(--wiki-content-background-color); border-color: var(--wiki-accent-color); box-shadow:0 1px 1px var(--wiki-content-dynamic-color); /* fallback */ box-shadow: 0 1px 1px color-mix(in srgb, var(--wiki-content-dynamic-color) 15%, transparent); } .ve-init-mw-progressBarWidget-bar { background-color:var(--wiki-accent-color); } .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar { border-bottom-color: var(--wiki-content-border-color); } .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar { top: var(--wikigg-header-height, 0); background: var(--wiki-content-background-color); } div.ve-ce-branchNode { border-color:var(--wiki-content-border-color); } .ve-ce-focusableNode-highlight { background: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .ve-ce-surface-highlights-focused .ve-ce-focusableNode-highlights { opacity: 0.25; } .ve-ce-branchNode-blockSlug, .ve-ce-branchNode-newSlug:not(.ve-ce-branchNode-newSlug-open) { outline-color: var(--wiki-accent-color); background-color:var(--wiki-content-dynamic-color--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 75%, transparent); } figure[typeof~='mw:File/Thumb'], figure[typeof~='mw:File/Frame'], figure[typeof~='mw:Image/Thumb'], figure[typeof~='mw:Video/Thumb'], figure[typeof~='mw:Audio/Thumb'], figure[typeof~='mw:Image/Frame'], figure[typeof~='mw:Video/Frame'], figure[typeof~='mw:Audio/Frame'] { border-color: var(--wiki-content-border-color); background-color: var(--wiki-content-background-color--secondary); } figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:File/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:File/Frame'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Frame'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Frame'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Frame'] > span:first-child > *:first-child:not(.mw-broken-media) { border-color: var(--wiki-content-border-color); background: var(--wiki-content-background-color--secondary); } figure[typeof~='mw:File/Thumb'] > figcaption, figure[typeof~='mw:File/Frame'] > figcaption, figure[typeof~='mw:Image/Thumb'] > figcaption, figure[typeof~='mw:Video/Thumb'] > figcaption, figure[typeof~='mw:Audio/Thumb'] > figcaption, figure[typeof~='mw:Image/Frame'] > figcaption, figure[typeof~='mw:Video/Frame'] > figcaption, figure[typeof~='mw:Audio/Frame'] > figcaption { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-specialCharacterPage-character, .oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above, .oo-ui-bookletLayout > .oo-ui-menuLayout-menu, .ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu, .ve-ui-specialCharacterPage-character:hover { border-color:var(--wiki-content-border-color); } .ve-ui-specialCharacterPage-character:hover { box-shadow:inset 0 0 1px 1px var(--wiki-accent-color); } .oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-disabled .oo-ui-tool-title, .oo-ui-popupToolGroup-tools .oo-ui-tool-link .oo-ui-tool-accel { color: var(--wiki-content-text-mix-color); } .oo-ui-barToolGroup-tools.oo-ui-toolGroup-enabled-tools .oo-ui-tool.oo-ui-widget-disabled.oo-ui-flaggedElement-primary > .oo-ui-tool-link .oo-ui-tool-title, .oo-ui-barToolGroup-tools.oo-ui-toolGroup-disabled-tools .oo-ui-tool.oo-ui-flaggedElement-primary > .oo-ui-tool-link .oo-ui-tool-title { color:var(--wiki-content-dynamic-color--inverted); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 78%, transparent); } .ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-link-color) 10%, transparent); } .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected { color: var(--wiki-accent-color); box-shadow: inset 0 -2px 0 0 var(--wiki-accent-color); } .oo-ui-tabOptionWidget { color: var(--wiki-content-text-mix-color); } .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-widget-enabled:not(.oo-ui-optionWidget-selected):hover { color: var(--wiki-accent-color--hover); box-shadow: inset 0 -2px 0 0 var(--wiki-accent-color--hover); } .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-widget-enabled:not(.oo-ui-optionWidget-selected):active { color: var(--wiki-content-text-color); box-shadow: inset 0 -2px 0 0 var(--wiki-accent-color--hover); } .oo-ui-tabSelectWidget-frameless { box-shadow: inset 0 -1px 0 0 var(--wiki-content-border-color); } .oo-ui-textInputWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input { border-color: var(--wiki-alert-color); } .ve-ce-linkAnnotation.ve-ce-annotation-active { box-shadow:0 0 0 1px var(--wiki-content-background-color--secondary); /* fallback */ box-shadow: 0 0 0 1px color-mix(in srgb, var(--wiki-content-link-color) 20%, transparent); background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-link-color) 10%, transparent); } .ve-ui-mwInternalLinkContextItem-withImage > .oo-ui-iconElement.oo-ui-iconElement-icon { background-color: var(--wiki-content-text-mix-color-95); background-color: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 90%, var(--wiki-content-dynamic-color)); border-color: var(--wiki-content-text-mix-color-95); border-color: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 90%, var(--wiki-content-dynamic-color)); filter: unset; } .mw-widget-titleWidget-menu-withImages .mw-widget-titleOptionWidget.oo-ui-iconElement > .oo-ui-iconElement-icon.mw-widget-titleOptionWidget-hasImage { filter: unset; } .mw-widget-titleWidget-menu-withImages .mw-widget-titleOptionWidget.oo-ui-iconElement > .oo-ui-iconElement-icon:not(.mw-widget-titleOptionWidget-hasImage) { background-color: var(--wiki-content-text-mix-color-95); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 90%, var(--wiki-content-dynamic-color)); filter: unset; } .ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label .ve-ui-linkContextItem-label-preview { color: var(--wiki-content-text-mix-color); } .ve-ui-toolbarDialog { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .ve-ce-languageAnnotation { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent); border-color: var(--wiki-content-link-color); } .mw-widget-mediaResultWidget-overlay { box-shadow: inset 0 0 0 1px var(--wiki-content-border-color); } .oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) > .oo-ui-buttonElement-button { background-color: transparent; border-right-color: var(--wiki-accent-color); /* fallback */ border-right-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-selectFileWidget-dropTarget { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget { background-color: var(--wiki-content-background-color); } .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover { border-color: var(--wiki-content-text-mix-color); } .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-canDrop.oo-ui-selectFileWidget-dropTarget, .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-canDrop .oo-ui-selectFileInputWidget-info > .oo-ui-inputWidget-input { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); color: var(--wiki-accent-color); } .oo-ui-selectFileWidget.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, .oo-ui-selectFileWidget.oo-ui-selectFileInputWidget-empty.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget { background-color: var(--wiki-content-text-mix-color-95); border-color: var(--wiki-content-dynamic-color--secondary); } .mw-upload-bookletLayout-filePreview { background-color: var(--wiki-content-background-color--secondary); } .ve-ui-mwMediaDialog-panel-imageinfo-details { color: var(--wiki-content-text-mix-color); } .oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input { -webkit-text-fill-color:var(--wiki-content-text-color); /* fallback */ -webkit-text-fill-color: color-mix(in srgb, var(--wiki-content-text-color) 50%, transparent); } .oo-ui-optionWidget.oo-ui-widget-disabled { color: var(--wiki-content-text-mix-color); } .ve-ui-mwLanguagesPage-languages-table th, .ve-ui-mwLanguagesPage-languages-table td { border-bottom-color: var(--wiki-content-border-color); } .ve-ui-mwLanguagesPage-languages-table tr:nth-child(even) td { background: var(--wiki-content-background-color); } .ve-ui-mwLanguagesPage-languages-table tr:nth-child(odd) td { background: transparent; /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--secondary) 5%, transparent); } .ve-ui-targetWidget { border-color: var(--wiki-content-border-color); } .ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) { background: var(--wiki-content-background-color); } .ve-ui-targetWidget-focused { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .ve-ui-mwTransclusionOutlineTemplateWidget-sticky { background-color: var(--wiki-content-background-color); } .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted { color: var(--wiki-content-dynamic-color); } .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.ve-ui-mwTransclusionOutlineParameterWidget-activePage, .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.ve-ui-mwTransclusionOutlineParameterWidget-activePage:hover, .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.ve-ui-mwTransclusionOutlineParameterWidget-activePage.oo-ui-optionWidget-highlighted { color: var(--wiki-accent-color); } .ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters { color: var(--wiki-content-text-mix-color); } .ve-ui-mwTemplatePage-description { color: var(--wiki-content-text-mix-color); } .ve-ui-mwParameterPage-doc-required, .ve-ui-mwParameterPage-doc-deprecated, .ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example { color: var(--wiki-content-text-mix-color); } .ve-ui-expandableContent-fade { background: linear-gradient(to right, transparent 0, var(--wiki-content-background-color) 90%); } .ve-ui-expandableContent-toggle { background-color: var(--wiki-content-background-color); } .ve-ui-mwParameterPage-undocumentedLabel { color: var(--wiki-content-text-mix-color); } .oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label { color: var(--wiki-content-text-mix-color); } .ve-ui-mwLatexDialog-content .oo-ui-bookletLayout-stackLayout h3 { color: var(--wiki-content-text-mix-color); } .ve-ui-mwLatexPage-symbol { border-color: var(--wiki-content-border-color); } .ve-ui-mwGalleryDialog-highlighted-image { background-color: var(--wiki-content-background-color--secondary); } .ve-ui-mwHelpListToolGroup-tools-footer { border-color: var(--wiki-content-border-color); } .ve-ui-mwHelpListToolGroup-version-link, .ve-ui-mwHelpListToolGroup-version-date, .ve-ui-mwHelpPopupTool-version-label, .ve-ui-mwHelpPopupTool-version-link, .ve-ui-mwHelpPopupTool-version-date { color: var(--wiki-content-text-mix-color); } .ve-ui-mwSaveDialog-summary { background-color: var(--wiki-content-background-color); } .ve-ui-mwSaveDialog-options { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-mwSaveDialog-license { color: var(--wiki-content-text-mix-color); } .oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) > .oo-ui-buttonElement-button:hover, .oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) > .oo-ui-buttonElement-button:active { border-right-color: var(--wiki-accent-color); border-left-color: var(--wiki-accent-color); } .ve-ui-debugBar { border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-commands-divider { border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-dump > table { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-dump td { background-color: var(--wiki-content-background-color); } .ve-ui-debugBar-dump th { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); text-shadow: 0 1px 1px var(--wiki-content-dynamic-color--inverted); } .ve-ui-debugBar-dump ol { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-element, .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-char, .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-achar { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-dynamic-color); text-shadow: 0 1px 1px var(--wiki-content-dynamic-color--inverted); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-element { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-char { background-color:var(--wiki-success-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-success-color) 20%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-achar { background-color:var(--wiki-warning-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 20%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-note { color: var(--wiki-content-text-mix-color); } .ve-ui-debugBar-filibuster { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-transactions > ol > li { border-color: var(--wiki-content-border-color); } /******************* * End VisualEditor * ********************/ /************************** * Theme-based AbuseFilter * ***************************/ table.mw-abuselog-details { background: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } table.mw-abuselog-details th, table.mw-abuselog-details td, div.mw-abusefilter-editor { border-color: var(--wiki-content-border-color); } table.mw-abuselog-details th { background: var(--wiki-content-background-color--secondary); } body td.mw-abusefilter-history-changed { background-color:var(--wiki-alert-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-alert-color) 20%, transparent); } /****************** * End AbuseFilter * *******************/ /************************************ * Theme-based Special:MultiPageEdit * *************************************/ :root { --jexcel-border-color:var(--wiki-content-border-color); /* this is defined by the extension but does not seem to be used anywhere. We override it just in case *shrug* */ } .jexcel, .jexcel_container.fullscreen .jexcel_content{ background-color:var(--wiki-content-background-color); border-bottom-color:var(--wiki-content-border-color); border-right-color:var(--wiki-content-border-color); } table.jexcel > tbody > tr > td:first-child, table.jexcel > thead, table.jexcel > thead > tr > td, table.jexcel > tbody > tr.selected > td:first-child, table.jexcel > thead > tr > td.selected { background-color:var(--wiki-content-background-color--secondary); } table.jexcel > tbody > tr.selected > td:first-child, table.jexcel > thead > tr > td.selected { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); } table.jexcel > thead > tr > td{ border-bottom-color:var(--wiki-content-border-color); } .jexcel > thead > tr > td.arrow-up, .jexcel > thead > tr > td.arrow-down { background:none; } .jexcel > thead > tr > td.arrow-up::after, .jexcel > thead > tr > td.arrow-down::after { display:inline-block; position:absolute; right:0; top:0; background-repeat:no-repeat; background-position:center right 5px; width:22px; height:100%; content:''; filter:brightness(50%) var(--wiki-icon-general-filter); } .jexcel > thead > tr > td.arrow-up::after { background-image:url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3Cpath d='M7 14l5-5 5 5H7z' fill='gray'/%3E%3C/svg%3E"); } .jexcel > thead > tr > td.arrow-down::after { background-image:url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3Cpath d='M7 10l5 5 5-5H7z' fill='gray'/%3E%3C/svg%3E"); } .jexcel > thead > tr:nth-child(2) > td { z-index:1; /* prevents overlapping the headings after scrolling on tall tables */ } .jexcel > tbody > tr > td { border-top-color:var(--wiki-content-text-mix-color-95); border-bottom-color:var(--wiki-content-text-mix-color-95); } .jexcel > tbody > tr > td.readonly { color:var(--wiki-content-text-mix-color); } .jexcel_content { scrollbar-color:var(--wiki-content-text-mix-color) transparent; /* we need this important to override inline styling */ box-shadow:var(--wiki-content-dynamic-color--secondary--inverted) 2px 2px 5px 0.1px !important; } .jexcel .highlight { background-color: transparent; /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .jexcel .highlight-top { border-top-color:var(--wiki-content-text-mix-color); box-shadow:0px -1px var(--wiki-content-dynamic-color--secondary--inverted); } .jexcel .highlight-left { border-left-color:var(--wiki-content-text-mix-color); box-shadow:-1px 0px var(--wiki-content-dynamic-color--secondary--inverted); } .jexcel .highlight-top.highlight-left { box-shadow:-1px -1px var(--wiki-content-dynamic-color--secondary--inverted); } .jexcel .highlight-right { border-right-color:var(--wiki-content-text-mix-color); } .jexcel .highlight-bottom { border-bottom-color:var(--wiki-content-text-mix-color); } .jexcel .jexcel_column_filter { background:none; } .jexcel .jexcel_column_filter::after { display:inline-block; position:absolute; right:0; top:0; background-repeat:no-repeat; background-position:top 50% right 5px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='gray' width='18px' height='18px'%3E%3Cpath d='M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E"); width:20px; height:100%; content:''; filter:brightness(50%) var(--wiki-icon-general-filter); } .jexcel_pagination > div > div { background-color:var(--wiki-accent-color); /* we need this important to override a built-in one */ color:var(--wiki-accent-label-color) !important; } .jexcel_page_selected { background:linear-gradient(to bottom,var(--wiki-accent-color) 0%,var(--wiki-accent-color--hover) 100%); /* we need this important to override a built-in one */ border:1px solid var(--wiki-content-border-color) !important; } /**************************** * End Special:MultiPageEdit * *****************************/ /*********************** * Theme-based msupload * ************************/ #msupload-div, #msupload-list .file { background-color:var(--wiki-content-background-color); border-color:var(--wiki-content-border-color); } #msupload-select { filter:brightness(0) var(--wiki-icon-to-link-filter); } #msupload-dropzone { border-color:var(--wiki-content-border-color); color:var(--wiki-content-text-color); } .drop-over { background-color:var(--wiki-accent-color); color:var(--wiki-accent-label-color) !important; } #msupload-bottom { border-color:var(--wiki-content-border-color); } #msupload-bottom #msupload-files { padding-left:0; background: none; } #msupload-bottom #msupload-files::before { display:inline-block; background: url(/extensions/MsUpload/resources/images/msu-upload-icon.png?bdd61) no-repeat 0 0; background-position:left center; height:22px; width:25px; content:''; vertical-align: top; filter:var(--wiki-icon-general-filter); } #msupload-list .file .file-size { color: var(--wiki-content-text-mix-color); } #msupload-div a { color: var(--wiki-content-link-color); } #msupload-list .file .file-name:hover { background-color: var(--wiki-content-dynamic-color--inverted); } #msupload-list .file .file-name-input { background: var(--wiki-content-dynamic-color--inverted); } #msupload-list .file .file-warning { color: var(--wiki-warning-color); } /*************************** * End theme-based msupload * ****************************/ /***************************** * Theme-based commentstreams * ******************************/ .cs-title-edit-field { border-color:var(--wiki-accent-color); } .cs-title-edit-field::placeholder, .view-dark .cs-body-edit-field::placeholder { color: var(--wiki-content-text-mix-color); } .cs-edit-box , .cs-expanded .cs-comment-header { background-color: var(--wiki-content-background-color--secondary); border-color:var(--wiki-content-border-color); } .cs-target-comment .cs-comment-header { border-color:var(--wiki-accent-color); } .cs-comment-author a { color: var(--wiki-content-link-color); } .cs-comment-details { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 95%, transparent); } .cs-comment-author-anonymous { color:var(--wiki-content-text-color); /* fallback */ color:color-mix(in srgb, var(--wiki-content-text-color) 95%, transparent); } .cs-comment { border:1px solid var(--wiki-content-border-color); } .cs-comment-body { padding:0 5px; } /********************************* * End theme-based commentstreams * **********************************/ /************************ * Theme-based checkuser * *************************/ .mw-datatable.ext-checkuser-investigate-table tr:hover td { background-color:var(--wiki-content-background-color); } .mw-datatable.ext-checkuser-investigate-table th { background-color:var(--wiki-content-background-color--secondary); } .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned td, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned-data-match td, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) .ext-checkuser-investigate-table-row-hover-data-match td, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) tr:hover td{ background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 10%, transparent); } .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned td.ext-checkuser-investigate-table-cell-pinned, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned-data-match td.ext-checkuser-investigate-table-cell-pinned, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned td.ext-checkuser-investigate-table-cell-pinned-data-match, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned-data-match td.ext-checkuser-investigate-table-cell-pinned-data-match, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) tr td.ext-checkuser-investigate-table-cell-hover-data-match, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) tr td:hover.ext-checkuser-investigate-table-cell-pinnable { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 40%, transparent); } .ext-checkuser-investigate-copy-message.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice { background-color:var(--wiki-content-background-color--secondary); border-color:var(--wiki-content-border-color); } .mw-special-Investigate .ext-checkuser-investigate-subtitle-fieldset { background-color:var(--wiki-content-background-color--secondary); } /**************** * End checkuser * *****************/ /*************************** * Theme-based SearchDigest * ****************************/ .searchdigest-stats-table { border-color: var(--wiki-content-border-color); border-collapse: collapse; } .searchdigest-stats-table thead th, .searchdigest-stats-table tr:not(:last-child) th, .searchdigest-stats-table tr:not(:last-child) td { border-bottom-color: var(--wiki-content-border-color); } .searchdigest-stats-table thead th:last-child, .searchdigest-stats-table td { border-left-color: var(--wiki-content-border-color); } .searchdigest-stats-table thead tr { background: var(--wiki-content-background-color--secondary); } /******************* * End SearchDigest * ********************/ /**************************** * Extension:RelatedArticles * *****************************/ .client-js .read-more-container { min-height:unset; } @media (min-width: 1000px) { .client-js .read-more-container { min-height:calc( 80px /*card height*/ + 10px /*card margin*/ + 1em /*container padding*/ + 0.3em /*card-list margin*/ + 0.8em /*h2 font-size*/ + 1em /*h2 padding*/ + 0.6em /*h2 margin*/ + 1px /*container border*/ ); } } .ext-related-articles-card-list .ext-related-articles-card { background-color:var(--wiki-content-background-color); } .ext-related-articles-card-list .ext-related-articles-card, .ext-related-articles-card-list .ext-related-articles-card + .ext-related-articles-card { /* your guess is as good as mine for why they did this */ border-color:var(--wiki-content-border-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-border-color) 20%, transparent); } .ext-related-articles-card-list .ext-related-articles-card-thumb { background-color:var(--wiki-content-background-color--secondary); } .ra-read-more h2 { color:var(--wiki-body-dynamic-color--secondary); } .ext-related-articles-card-list h3 a { color:var(--wiki-content-heading-color); } .ext-related-articles-card-list h3::after { background-image: linear-gradient(to right,transparent,var(--wiki-content-background-color) 50%); } .ext-related-articles-card-list .ext-related-articles-card-extract { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 50%, transparent); } /* removed background image and use a mask image instead */ .ext-related-articles-card-list .ext-related-articles-card-thumb-placeholder { position:relative; background-image:none; } .ext-related-articles-card-list .ext-related-articles-card-thumb-placeholder::after { position:absolute; width:100%; height:100%; top:0; left:0; content:''; --mask-image: url("/extensions/RelatedArticles/resources/ext.relatedArticles.readMore/article.svg?3c572"); --mask-size: 40px; --mask-repeat: no-repeat; --mask-position: center; -webkit-mask: var(--mask-image); mask: var(--mask-image); -webkit-mask-size: var(--mask-size); mask-size: var(--mask-size); -webkit-mask-repeat: var(--mask-repeat); mask-repeat: var(--mask-repeat); -webkit-mask-position: var(--mask-position); mask-position: var(--mask-position); background-color:var(--wiki-content-text-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-text-color) 75%, transparent); } /**/ /* this simulates mw-footer having a top border */ .read-more-container { border-bottom: var(--wiki-content-border-width, 1px) solid var(--wiki-content-border-color); } @media screen and (min-width: 720px) { .read-more-container { margin-right:1em; } } /******************************** * End Extension:RelatedArticles * *********************************/ /******************* * Extension:Popups * ********************/ .mwe-popups { box-shadow:0 30px 90px -20px rgba(0,0,0,0.3),0 0 1px 1px transparent; /* fallback */ box-shadow: 0 30px 90px -20px rgba(0,0,0,0.3),0 0 1px 1px color-mix(in srgb, var(--wiki-content-border-color) 5%, transparent); } .mwe-popups, .mwe-popups .mwe-popups-container { background-color:var(--wiki-content-background-color); color:var(--wiki-content-text-color); } .mwe-popups .mwe-popups-extract { color:var(--wiki-content-text-color); } .mwe-popups .mwe-popups-extract[dir="ltr"]::after { background-image: linear-gradient(to right,transparent,var(--wiki-content-background-color) 50%); } .mwe-popups.flipped-y::before, .mwe-popups.flipped-x-y::before, .mwe-popups.mwe-popups-image-pointer::before, .mwe-popups.mwe-popups-image-pointer.flipped-x::before, .mwe-popups.mwe-popups-no-image-pointer::before, .mwe-popups.flipped-x.mwe-popups-is-tall::before, .mwe-popups.flipped-x-y.mwe-popups-is-tall::before { border-color:var(--wiki-content-border-color); } .mwe-popups.flipped-y::after, .mwe-popups.flipped-x-y::after, .mwe-popups.mwe-popups-image-pointer::after, .mwe-popups.mwe-popups-image-pointer.flipped-x::after, .mwe-popups.mwe-popups-no-image-pointer::after, .mwe-popups.flipped-x-y.mwe-popups-is-tall::after { border-color:var(--wiki-content-background-color); } .popups-icon { position:relative; background-position: center; background-repeat: no-repeat; background-size: calc(max(1.4285714em,20px)); min-width: 20px; min-height: 20px; width: 1.4285714em; height: 1.4285714em; display: inline-block; vertical-align: text-bottom; } .popups-icon--preview-generic, .popups-icon--settings, .popups-icon--infoFilled, .popups-icon--infoFilled:lang(ar), .popups-icon--close, .popups-icon--reference-generic, .popups-icon--reference-book, .popups-icon--preview-disambiguation { background-image:none; } .popups-icon::after { position:absolute; width:100%; height:100%; top:0; left:0; content:''; -webkit-mask-image:var(--mask-image, none); mask-image:var(--mask-image, none); -webkit-mask-repeat:var(--mask-repeat, no-repeat); mask-repeat:var(--mask-repeat, no-repeat); -webkit-mask-size:var(--mask-size, calc(max(1.4285714em,20px))); mask-size:var(--mask-size, calc(max(1.4285714em,20px))); -webkit-mask-position:var(--mask-position, center); mask-position:var(--mask-position, center); background-color:var(--mask-color, currentColor); background-color:var(--mask-color, currentColor); } .popups-icon--preview-generic::after { --mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E %3Ctitle%3E sad face %3C/title%3E %3Cpath d=%22M2 0a2 2 0 0 0-2 2v18l4-4h14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm4 4c1.336 0 2.007 1.617 1.06 2.56-.943.947-2.56.276-2.56-1.06A1.5 1.5 0 0 1 6 4zm8 0c1.336 0 2.007 1.617 1.06 2.56-.943.947-2.56.276-2.56-1.06A1.5 1.5 0 0 1 14 4zm-4 5c2.61 0 4.83.67 5.65 3H4.35C5.17 9.67 7.39 9 10 9z%22/%3E %3C/svg%3E"); } .popups-icon--settings::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><g transform=\"translate(10 10)\"><path id=\"cdx-icon-settings-a\" d=\"M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3\"/><use xlink:href=\"%23cdx-icon-settings-a\" transform=\"rotate(45)\"/><use xlink:href=\"%23cdx-icon-settings-a\" transform=\"rotate(90)\"/><use xlink:href=\"%23cdx-icon-settings-a\" transform=\"rotate(135)\"/></g><path d=\"M10 2.5a7.5 7.5 0 000 15 7.5 7.5 0 000-15v4a3.5 3.5 0 010 7 3.5 3.5 0 010-7\"/></svg>"); } .popups-icon--infoFilled::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z\"/></svg>"); } .popups-icon--infoFilled:lang(ar)::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M8 19a1 1 0 001 1h2a1 1 0 001-1v-1H8zm9-12a7 7 0 10-12 4.9S7 14 7 15v1a1 1 0 001 1h4a1 1 0 001-1v-1c0-1 2-3.1 2-3.1A7 7 0 0017 7z\"/></svg>"); } .popups-icon--close::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"m4.34 2.93 12.73 12.73-1.41 1.41L2.93 4.35z\"/><path d=\"M17.07 4.34 4.34 17.07l-1.41-1.41L15.66 2.93z\"/></svg>"); } .popups-icon--reference-generic::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"m15 10-2.78-2.78L9.44 10V1H5a2 2 0 00-2 2v14a2 2 0 002 2h10a2 2 0 002-2V3a2 2 0 00-2-2z\"/></svg>"); } .popups-icon--reference-book::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M15 2a7.65 7.65 0 00-5 2 7.65 7.65 0 00-5-2H1v15h4a7.65 7.65 0 015 2 7.65 7.65 0 015-2h4V2zm2.5 13.5H14a4.38 4.38 0 00-3 1V5s1-1.5 4-1.5h2.5z\"/><path d=\"M9 3.5h2v1H9z\"/></svg>"); } .popups-icon--reference-journal::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M2 18.5A1.5 1.5 0 003.5 20H5V0H3.5A1.5 1.5 0 002 1.5zM6 0v20h10a2 2 0 002-2V2a2 2 0 00-2-2zm7 8H8V7h5zm3-2H8V5h8z\"/></svg>"); } .popups-icon--reference-news::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M5 2a2 2 0 00-2 2v12a1 1 0 01-1-1V5h-.5A1.5 1.5 0 000 6.5v10A1.5 1.5 0 001.5 18H18a2 2 0 002-2V4a2 2 0 00-2-2zm1 2h11v4H6zm0 6h6v1H6zm0 2h6v1H6zm0 2h6v1H6zm7-4h4v5h-4z\"/></svg>"); } .popups-icon--reference-web::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M2 2a2 2 0 00-2 2v12a2 2 0 002 2h16a2 2 0 002-2V4a2 2 0 00-2-2zm2 1.5A1.5 1.5 0 112.5 5 1.5 1.5 0 014 3.5zM18 16H2V8h16z\"/></svg>"); } .popups-icon--preview-disambiguation::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M7 0a2 2 0 00-2 2h9a2 2 0 012 2v12a2 2 0 002-2V2a2 2 0 00-2-2z\"/><path d=\"M13 20a2 2 0 002-2V5a2 2 0 00-2-2H4a2 2 0 00-2 2v13a2 2 0 002 2zM9 5h4v5H9zM4 5h4v1H4zm0 2h4v1H4zm0 2h4v1H4zm0 2h9v1H4zm0 2h9v1H4zm0 2h9v1H4z\"/></svg>"); } /*********************** * End Extension:Popups * ************************/ /********************* * Mobile adjustments * **********************/ /* Responsive Special:UserRights */ #mw-userrights-table-outer input#wpReason { width:100%; max-width:33.5em; } @media screen and (max-width:720px) { :root { --wiki-content-right-margin: 0px; --wiki-content-padding:0.5rem; --wiki-navigation-right-margin: 1px; --wiki-navigation-left-margin: 0px; --wiki-navigation-top-padding: 5px; --wiki-navigation-bottom-padding:0px; --wiki-navigation-height:2rem; --wiki-navigation-search-height:2.15rem; --wiki-navigation-search-margin:0.5rem; --wiki-logo-height: 80px; --wiki-logo-width: 100%; --wiki-logo-margin: 10px; --wiki-head-height: calc(var(--wiki-logo-height) + (var(--wiki-logo-margin) * 2) + var(--wiki-navigation-height) + var(--wiki-navigation-top-padding) + var(--wiki-navigation-bottom-padding)); --wiki-head-icon-padding: 0.25rem; --wiki-head-icon-size: calc(var(--wiki-navigation-height) - var(--wiki-head-icon-padding) * 2); --wiki-sidebar-background-opacity: var(--wiki-content-background-opacity); --wiki-menu-margin: 0.2rem; --wiki-menu-top-offset: calc(var(--wiki-head-height) + var( --wikigg-header-height ) + var(--wiki-navigation-bottom-padding) + var(--wiki-navigation-search-margin)); --wiki-sidebar-portal-spacing:0px; } #mw-page-base, #mw-head-base { height:var(--wiki-head-height); } #mw-page-base { padding-top: var( --wikigg-header-height ); } #mw-head-base { margin-top:calc(var(--wiki-head-height) * -1); } #p-logo, #p-logo a { height: var(--wiki-logo-height); width: var(--wiki-logo-width); } #p-logo { position:absolute; background:none; padding:0; left:0; margin:var(--wiki-logo-margin) 0; transform:none; top:calc(var(--wikigg-header-height)); } .mw-wiki-logo { background-size:contain; } #mw-head { left:0; width:100%; top:calc(var(--wiki-head-height) + var( --wikigg-header-height ) - var(--wiki-navigation-height)); } #left-navigation, #right-navigation { margin-top: 0; height:var(--wiki-navigation-height); } #right-navigation { margin-right: var(--wiki-navigation-right-margin); } div#left-navigation { margin-left: var(--wiki-navigation-left-margin); } div#right-navigation div#p-search { margin-right: 0; } .vector-menu-tabs-legacy, .vector-menu-dropdown { height:var(--wiki-navigation-height); } .vector-menu-tabs-legacy li a { height:var(--wiki-navigation-height); } #p-cactions { padding-bottom: 0px; } #p-search { position: absolute; left: 50%; transform:translateX(-50%); top: calc(var(--wiki-navigation-height) + var(--wiki-navigation-bottom-padding)); margin-left:0px; z-index: 4 /** above #mw-panel **/; } #simpleSearch { width: calc(100vw - var(--wiki-navigation-right-margin) - var(--wiki-navigation-left-margin)); } .vector-search-box-input { height:var(--wiki-navigation-search-height); } .vector-search-box form { margin:var(--wiki-navigation-search-margin) 0px; } .mw-body, .mw-footer { border-left-width: 0; border-right-width: 0; } .mw-body { margin-top: 0; padding-top:calc(var(--wiki-content-padding) + var(--wiki-navigation-search-height) + var(--wiki-navigation-bottom-padding) + (var(--wiki-navigation-search-margin) * 2)); } #mw-data-after-content { margin-left:0; } #mw-panel { position: unset; width:100%; margin: 0px auto; padding: 0; top: 0; background-position:bottom right, top center; background-size:100% 0.5em, 100% 100%; float:unset; } .vector-menu-dropdown .vector-menu-content { right: 0; left: unset; } #mw-panel .vector-menu-portal { box-sizing:border-box; border-left-width:0; border-right-width:0; background-color: var(--wiki-sidebar-background-color); } table.wikitable, table.responsive-table { display: block; overflow-x: auto; border: 0; } .mw-installed-software { word-break: unset; } .gallerybox, .gallerybox > div, .gallerybox .thumb { max-width:100%; } /* disable float on RecentChanges legend */ .mw-changeslist-legend { float: none; margin: 0 auto; } /* advanced search options */ #mw-searchoptions table { float: none; } #mw-searchoptions table td { display: block; } /* popup when clicking the download button in multimediaviewer */ .mw-mmv-dialog { width: unset; } /* turn math elements into scroll blocks unless they're an immediate child of a span */ :not(span) > math.mwe-math-element { overflow: auto hidden; max-width: 100%; } /* Expandable mobile navigation panel */ body.has-vector-mobile-menu #mw-panel { position: absolute; top: var(--wiki-menu-top-offset); z-index: 3; } body.has-vector-mobile-menu #mw-panel .mobile-nav-toggle { position: relative; cursor: pointer; z-index: 5; display: block; appearance: none; border: 1px solid var(--wiki-content-border-color); margin-left: var(--wiki-navigation-search-margin); margin-bottom: 2px; background-color: var(--wiki-content-background-color--secondary); } body.has-vector-mobile-menu #mw-panel .vector-menu-portal { display: none; } body.has-vector-mobile-menu #mw-panel .mobile-nav-toggle.nav--expanded ~ .vector-menu-portal { display: block; } body.has-vector-mobile-menu #mw-navigation #mw-panel .vector-menu-portal { text-align: left; font-size: 110%; border-left-width: var(--wiki-sidebar-border-width, 1px); border-right-width: var(--wiki-sidebar-border-width, 1px); margin-inline: calc(var(--wiki-navigation-left-margin) + var(--wiki-menu-margin)); } body.has-vector-mobile-menu #mw-navigation #mw-panel .vector-menu-portal + .vector-menu-portal { border-top-width: 0; } body.has-vector-mobile-menu #mw-navigation #mw-panel .vector-menu-portal:not(:last-child) { border-bottom-width: 0; } body.has-vector-mobile-menu #mw-panel .vector-menu-content-list { display: flex; flex-wrap: wrap; } body.has-vector-mobile-menu #mw-panel .vector-menu-content-list a { display: block; padding: 0.2rem 0.5rem; border: 1px solid transparent; } body.has-vector-mobile-menu #mw-panel .vector-menu-content-list a:hover { border-color: var(--wiki-content-link-color); } body.has-vector-mobile-menu #mw-panel a.feedlink { padding-left: 16px; } body.has-vector-mobile-menu #mw-panel #p-navigation-label { display: block; } body.has-vector-mobile-menu #p-logo { /* Logo's a part of the sidebar panel, which uses relative positioning for the expandable button. Offset the logo appropriately. */ top: calc( -1 * var( --wiki-menu-top-offset ) + var( --wikigg-header-height ) ); } .mobile-nav-toggle { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/svg%3E%0A"); } body.has-vector-mobile-menu #p-tb .mw-list-item > a { display: inline-flex; } body.has-vector-mobile-menu #p-tb .vector-menu-content-list { flex-direction: row; } /* Search adjustments for the expandable menu */ body.has-vector-mobile-menu #p-search { /* reposition to the right when mobile sidebar menu is active */ left: calc(var(--wiki-navigation-search-margin) * 3 + var(--wiki-head-icon-size) + var(--wiki-head-icon-padding)); right: calc(var(--wiki-navigation-right-margin) + var(--wiki-navigation-search-margin)); transform: none; } body.has-vector-mobile-menu #simpleSearch { width: 100%; margin: 0 auto; } /* icon navbar tabs + expandable nav panel icon */ #mw-head { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E"); } #mw-head .vector-menu-tabs .mw-list-item a, #mw-head .vector-menu-dropdown .vector-menu-heading, #mw-panel .mobile-nav-toggle { line-height:var(--wiki-head-icon-size); width: var(--wiki-head-icon-size); /* same as line height */ height: var(--wiki-head-icon-size); box-sizing: content-box; padding: var(--wiki-head-icon-padding); color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/ } #mw-head .vector-menu-tabs .mw-list-item a::before, #mw-head .vector-menu-dropdown .vector-menu-heading::before, #mw-panel .mobile-nav-toggle::before { content: ""; display: block; position: unset; background-image: none; width: var(--wiki-head-icon-size); height: var(--wiki-head-icon-size); margin: 0; --mask: var(--icon) no-repeat; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-position: center center; mask-position: center center; background-color: var(--wiki-navigation-text-color); } #mw-head .vector-menu-tabs .mw-list-item a:hover::before, #mw-head .vector-menu-dropdown .vector-menu-heading:hover::before, #mw-panel .mobile-nav-toggle:hover::before, #mw-panel .mobile-nav-toggle.nav--expanded::before { background-color: var(--wiki-navigation-text-color--hover); } #mw-head .vector-menu-tabs .mw-list-item.selected a::before { background-color: var(--wiki-navigation-selected-text-color); } #mw-head .vector-menu-tabs .mw-list-item a span, #mw-head .vector-menu-dropdown .vector-menu-heading span { display: none; } #mw-head .vector-menu-dropdown .vector-menu-heading::after { display: none; } #ca-ve-edit, #ca-edit { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m16.77 8 1.94-2a1 1 0 0 0 0-1.41l-3.34-3.3a1 1 0 0 0-1.41 0L12 3.23zM1 14.25V19h4.75l9.96-9.96-4.75-4.75z'/%3E%3C/svg%3E%0A"); } #ca-ve-edit + #ca-edit { --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20' aria-hidden='true'%3E%3C!----%3E%3Cg%3E%3Cpath d='M1 3v14h3v-2H3V5h1V3zm4 0v14h4v-2H7V5h2V3zm11 0v2h1v10h-1v2h3V3zm-5 0v2h2v10h-2v2h4V3z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); } #ca-view, #ca-view-foreign { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M10 14.5a4.5 4.5 0 1 1 4.5-4.5 4.5 4.5 0 0 1-4.5 4.5M10 3C3 3 0 10 0 10s3 7 10 7 10-7 10-7-3-7-10-7'/%3E%3Ccircle cx='10' cy='10' r='2.5'/%3E%3C/svg%3E"); } #left-navigation li[id^=ca-nstab-] { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E article %3C/title%3E%3Cpath d='M5 1a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm0 3h5v1H5zm0 2h5v1H5zm0 2h5v1H5zm10 7H5v-1h10zm0-2H5v-1h10zm0-2H5v-1h10zm0-2h-4V4h4z'/%3E%3C/svg%3E%0A"); } #ca-history { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M9 6v5h.06l2.48 2.47 1.41-1.41L11 10.11V6z'/%3E%3Cpath d='M10 1a9 9 0 0 0-7.85 13.35L.5 16H6v-5.5l-2.38 2.38A7 7 0 1 1 10 17v2a9 9 0 0 0 0-18'/%3E%3C/svg%3E%0A"); } #ca-talk { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E"); } #t-contributions { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E"); } #ca-addsection { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E"); } #ca-viewsource { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E"); } #p-variants { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E"); } #p-cactions { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Ccircle cx='3' cy='10' r='2'/%3E%3Ccircle cx='17' cy='10' r='2'/%3E%3C/svg%3E%0A"); } #ca-watch { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M20 7h-7L10 .5 7 7H0l5.46 5.47-1.64 7 6.18-3.7 6.18 3.73-1.63-7zm-10 6.9-3.76 2.27 1-4.28L3.5 8.5h4.61L10 4.6l1.9 3.9h4.6l-3.73 3.4 1 4.28z'/%3E%3C/svg%3E%0A"); } #ca-unwatch { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' id='Outlined'%3E%3Cg style='fill:%23000000;fill-opacity:1' id='Fill'%3E%3Cpath style='fill:%23000000;fill-opacity:1' id='path1380' d='M 28.61,11.67 H 20 L 17.34,3.47 C 16.920093,2.1973942 15.119907,2.1973942 14.7,3.47 L 12,11.67 H 3.39 c -1.3409796,0.0031 -1.900508,1.71581 -0.82,2.51 l 7,5.07 -2.68,8.21 C 6.5980433,28.35747 7.2662365,29.278767 8.21,29.28 8.4953889,29.267666 8.7705436,29.170143 9,29 l 7,-5.07 7,5.07 c 0.236205,0.170386 0.518805,0.264586 0.81,0.27 0.943763,-0.0012 1.611957,-0.92253 1.32,-1.82 l -2.66,-8.21 7,-5.07 c 1.075277,-0.810084 0.486081,-2.522863 -0.86,-2.5 z' /%3E%3C/g%3E%3C/svg%3E"); } .vector-menu-tabs #ca-watch.icon a:hover::before, .vector-menu-tabs #ca-unwatch.icon a:hover::before { background-image:none; } /* RecentChanges - prevent overflow on long summaries */ .client-js .mw-changeslist ul, .client-js .mw-changeslist table.mw-enhanced-rc { margin-left:0; } .mw-changeslist-line-inner-comment, .mw-changeslist-line .comment { font-size:0.9em; } .mw-userlink { overflow-wrap:anywhere; } } /* Hide the expandable navigation button for desktop users */ .mobile-nav-toggle { display: none; } /************* * End mobile * **************/ /* All local skin customizations should go below this line */ 682a49c492dc6ae3d354cad5db01f9a28c7eb3be Template:!! 10 50 51 2025-03-25T22:48:21Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki ||<noinclude>{{documentation}}</noinclude> 02fb31115eef5c15d6612ac334bf5a5d83155c0a Template:!!/doc 10 51 52 2025-03-25T22:48:22Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:!( 10 52 53 2025-03-25T22:48:23Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [<noinclude> {{documentation}}</noinclude> 1b058774deae9a7e511a0486a04647d6a3b9af62 Template:!(( 10 53 54 2025-03-25T22:48:24Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[<noinclude> {{documentation}}</noinclude> a331374acf15177afbb3ffc0ec7bd5ada14c582e Template:!((/doc 10 54 55 2025-03-25T22:48:25Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:!(/doc 10 55 56 2025-03-25T22:48:26Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:!) 10 56 57 2025-03-25T22:48:27Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki |}<noinclude>{{documentation}}</noinclude> b2debea163716e114d1ea46e65a63d7a1ae84bc0 Template:!)/doc 10 57 58 2025-03-25T22:48:28Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:!- 10 58 59 2025-03-25T22:48:29Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki |-<noinclude>{{documentation}}</noinclude> 636f9e440c24f4a3fe28b49cebd1808c3de8a814 Template:!-! 10 59 60 2025-03-25T22:48:30Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki |-|<noinclude>{{documentation}}</noinclude> c634369c1e88b95ebe6a6d827cb32dc1e9c61fec Template:!-!/doc 10 60 61 2025-03-25T22:48:31Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:!-/doc 10 61 62 2025-03-25T22:48:32Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:( 10 62 63 2025-03-25T22:48:33Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {<noinclude> {{documentation}}</noinclude> 490a0c9c85eff213addd7272fe40f8627a637c75 Template:(! 10 63 64 2025-03-25T22:48:34Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {|<noinclude>{{documentation}}</noinclude> 86e51fe1f06ae532410029eb39fa936d68880bc8 Template:(!/doc 10 64 65 2025-03-25T22:48:35Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:(( 10 65 66 2025-03-25T22:48:35Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{<noinclude>{{documentation}}</noinclude> a506ba66cf7c806baae7faecb221b3a946721f6a Template:((( 10 66 67 2025-03-25T22:48:36Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{{<noinclude> {{documentation}}</noinclude> fa33084b57c1f33c82290de279827b973ab2fba8 Template:(((/doc 10 67 68 2025-03-25T22:48:37Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:((/doc 10 68 69 2025-03-25T22:48:38Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {| class="wikitable" style="text-align:center" |- ! scope="col" style="width:7.0em;" | {{no wrap|Template call}}<br>{{normal|('''m''' for magic word)}} ! scope="col" style="width:5.75em;" | {{no wrap|Output}}&nbsp;{{normal|(delayed interpretation as wikimarkup)}} ! scope="col" style="width:9.0em;" | {{no wrap|HTML alternative}} {{normal|(never interpreted as wikimarkup)}} ! Why you might want to use this |- style="vertical-align:top" | <code><nowiki>{{!}}</nowiki></code> '''(m)''' | <nowiki>|</nowiki> | &amp;#124; or {{tl|pipe}} | Displaying pipe characters inside of a parser function |- style="vertical-align:top" | <code><nowiki>{{=}}</nowiki></code> '''(m)''' | <nowiki>=</nowiki> | &amp;#61; | Displaying equal signs inside of unnamed parameters (e.g. <code><nowiki>{{MyTemplate|1+1=2}}</nowiki></code> will assign <code>2</code> to <code><nowiki>{{{1+1|}}}</nowiki></code>; <code><nowiki>{{MyTemplate|1+1{{=}}2}}</nowiki></code> will do what you want) |- style="vertical-align:top" | {{tlx|!!}} | <nowiki>||</nowiki> | &amp;#124;&amp;#124; | Displaying a break between two table cells inside of a parser function |- style="vertical-align:top" | {{tlx|!(}} | {{!(}} | &amp;#91; | Displaying a bracket inside of an external link |- style="vertical-align:top" | {{tlx|)!}} | {{)!}} | &amp;#93; | Displaying a bracket inside of an external link |- style="vertical-align:top" | {{tlx|!((}} | {{!((}} | &amp;#91;&amp;#91; | Displaying a bracket inside of a link |- style="vertical-align:top" | {{tlx|))!}} | {{))!}} | &amp;#93;&amp;#93; | Displaying a bracket inside of a link |- style="vertical-align:top" | {{tlx|(}} | {{(}} | &amp;#123; | Escaping a single brace immediately next to a template or parser function to avoid turning it into a parameter |- style="vertical-align:top" | {{tlx|)}} | {{)}} | &amp;#125; | Escaping a single brace immediately next to a template or parser function to avoid turning it into a parameter |- style="vertical-align:top" | {{tlx|((}} | {{((}} | &amp;#123;&amp;#123; | Displaying open braces for a template without actually transcluding that template |- style="vertical-align:top" | {{tlx|))}} | {{))}} | &amp;#125;&amp;#125; | Displaying closed braces for a template without actually transcluding that template |- style="vertical-align:top" | {{tlx|(((}} | {{(((}} | &amp;#123;&amp;#123;&amp;#123; | Displaying a template parameter's open curly braces without actually using that variable |- style="vertical-align:top" | {{tlx|)))}} | {{)))}} | &amp;#125;&amp;#125;&amp;#125; | Displaying a template parameter's closed curly braces without actually using that variable |- style="vertical-align:top" | {{tlx|(!}} | <nowiki>{|</nowiki> | &amp;#123;&amp;#124; | Starting a table inside of a parser function |- style="vertical-align:top" | {{tlx|!-}} | <nowiki>|-</nowiki> | &amp;#124;&amp;#45; | Starting a new table row inside of a parser function |- style="vertical-align:top" | {{tlx|!)}} | <nowiki>|}</nowiki> | &amp;#124;&amp;#125; | Closing a table inside of a parser function |}<includeonly> [[Category:Formatting templates]] </includeonly><noinclude>[[Category:Template documentation]]</noinclude> 9e1eb11bc0644d97b4cc9bc4445c3f0bacdd339d Template:(/doc 10 69 70 2025-03-25T22:48:39Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:) 10 70 71 2025-03-25T22:48:39Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki }<noinclude> {{documentation}}</noinclude> 3bf19eb36f7371f1b4b61b8efbba67dfb0e8cfd4 Template:)! 10 71 72 2025-03-25T22:48:40Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki ]<noinclude> {{documentation}}</noinclude> 016897dfd1af3b146bed2b47e7aa58c0bbf6f23d Template:)!/doc 10 72 73 2025-03-25T22:48:41Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:)) 10 73 74 2025-03-25T22:48:42Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki }}<noinclude> {{documentation}} </noinclude> 85ca77d4d6ff71d8e6396ebd798f87fa7f45dc02 Template:))! 10 74 75 2025-03-25T22:48:43Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki ]]<noinclude> {{documentation}}</noinclude> 3d84066ce45d0c1fca0bb04608a4e73c6ea54324 Template:))!/doc 10 75 76 2025-03-25T22:48:44Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:))) 10 76 77 2025-03-25T22:48:45Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki }}}<noinclude> {{documentation}}</noinclude> 585d94f6fe636b77087dc0d06bfbe6cb69b29987 Template:)))/doc 10 77 78 2025-03-25T22:48:46Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:))/doc 10 78 79 2025-03-25T22:48:47Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:)/doc 10 79 80 2025-03-25T22:48:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:* 10 80 81 2025-03-25T22:48:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki &nbsp;&bull;&nbsp;<noinclude> {{doc}} [[Category:Formatting templates]] </noinclude> 81a7f0051da7b8f4a0548d91c5eb429a974fac91 Template:*/doc 10 81 82 2025-03-25T22:48:49Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This is the '''bullet''' template; it looks like this: [&nbsp;&bull;&nbsp;] It works similarly to the HTML markup sequence: [<code>'''&amp;nbsp;&amp;bull;&amp;nbsp;'''</code>], that is, a non-breaking space, a bullet and a non-breaking space. This template is used when you want a larger bullet than a bold middot ['''&middot;'''], but something smaller than an en dash [&ndash;]. <noinclude>[[Category:Template documentation]]</noinclude> ea04fe63a10dc333ed9c48bfc397debb11682f1e Template:- 10 82 83 2025-03-25T22:48:50Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Clear]] 1a2aa4a9ba7478e54a2b21cbce68887ea297ea86 Template:Ambox 10 83 84 2025-03-25T22:48:51Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- --><div class="ambox {{{class|}}} {{#ifeq:{{lc:{{{tiny|}}}}}|yes|tiny}}"<!-- --> style="{{#if:{{{color|}}}|--ambox-color: {{{color|}}};<!-- /if -->}}"><!-- --><div class="ambox-icon metadata <!-- the metadata class stops it from showing in MediaViewer -->">[[File:{{{icon|Ambox banner content.svg}}}{{!}}{{#ifeq:{{lc:{{{tiny|}}}}}|yes|48x20px|48x48px}}|alt=|link=]]</div><!-- --><div class="ambox-content"><!-- start ambox content -->{{#if: {{{title|}}} | <p class="ambox-title">{{{title}}}</p> }}<!-- --><p class="ambox-text">{{{message|No text provided.}}}{{#if: {{{date|}}} |<nowiki> </nowiki>(Message added: {{{date}}}) }}</p><!-- --></div><!-- end ambox content --></div><!-- end ambox --></includeonly><noinclude> {{doc}} [[Category:Notice templates]]</noinclude> 8aaad422c212cbd451862c241845af0d62eddbd5 Template:Ambox/doc 10 84 85 2025-03-25T22:48:52Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{#ifeq:{{ROOTPAGENAME}}|Ambox|"Ambox" is an abbreviation for '''A'''rticle '''m'''essage '''box'''. You can use amboxes in articles to indicate something important about the current page, often in the header.| This '''message template''' is an [[Template:Ambox|article message box]], or '''ambox'''. The documentation below discusses how to use each ambox provided by the wiki. }} == Premade amboxes == === Problem notice amboxes === These amboxes are used temporarily to notify other editors and visitors about a problem with an article. These amboxes support the following parameters: * <code>|tiny=</code>: If set to <code>yes</code>, the box will have less padding and the icon will be much smaller than default. * <code>|class=</code>: Any additional CSS classes to add to the ambox container element. * <code>|date=</code>: The date the ambox was added to the page. * <code>|nocat=</code>: If set to <code>yes</code>, no category will be added to the page. Use this only when creating documentation. '''Note:''' Premade amboxes need the base {{tl|Ambox}} template to work. {| class="wikitable" ! Code !! Result |- | {{tl|Cleanup}} || {{Cleanup|nocat=yes}} |- | {{tl|Delete}} || {{Delete|nocat=yes}} |- | {{tl|Merge|Example}} || {{Merge|Template:Ambox{{!}}Example|nocat=yes}} |- | {{tl|Move|Example}} || {{Move|Template:Ambox{{!}}Example|nocat=yes}} |- | {{tl|Split|Example}}<br/>{{tl|Split|Example 1|Example 2|Example 3}} || {{Split|Template:Ambox{{!}}Example|nocat=yes}} {{Split|Template:Ambox{{!}}Example 1|Template:Ambox{{!}}Example 2|Template:Ambox{{!}}Example 3|nocat=yes}} |- | {{tl|Stub}} || {{Stub|nocat=yes}} |- |} === Informational amboxes === These amboxes are intended as permanent fixtures to a page, to notify visitors about some piece of information relevant to the page. These amboxes support the following parameters in addition to any listed: * <code>|tiny=</code>: If set to <code>yes</code>, the box will have less padding and the icon will be much smaller than default. * <code>|class=</code>: Any additional CSS classes to add to the ambox container element. {| class="wikitable" ! Code !! Additional parameters !! Result |- | {{tl|Spoiler warning}} || || {{Spoiler warning|nocat=yes}} |- | {{tl|No direct use}} || || {{No direct use|nocat=yes}} |- | {{tl|Uses Lua}} || <code><nowiki>|1=</nowiki></code>, a comma-separated list of modules used || {{Uses Lua|nocat=yes}} |} === Optional parameters === You can use optional parameters to further customize a premade ambox. The example below is using <code>tiny=yes</code> and <code>date=01/01/2021</code>. {{Cleanup|tiny=yes|date=01/01/2021|nocat=yes}} == Creating a custom ambox == You can create additional ambox templates as needed using the following parameters: <pre> {{Ambox | color = The left border color. | icon = The icon image to be displayed. | title = The optional title. | message = The explanation text displayed. | tiny = If you want the tiny version of the ambox, fill the parameter with "yes". | date = An optional date of creation for the message. | class = An optional CSS class for the ambox. }} </pre> == Dependencies == For this template to work properly, you need the following: * <code>.ambox</code> and any related classes, found in [[MediaWiki:Common.css]]. <includeonly>[[Category:Notice templates]]</includeonly><noinclude>[[Category:Template documentation]]</noinclude> d4fda481c06177d59ff39364bf17e15d7f1adfbc Template:Anchor 10 85 86 2025-03-25T22:48:53Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- --><span id="{{{1}}}"></span><!-- --></includeonly><!-- --><noinclude>{{doc}} [[Category:Navigation templates]]</noinclude> 08ccba46722925866447768d344bf540b0b55e79 Template:Anchor/doc 10 86 87 2025-03-25T22:48:54Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki == Summary == This template can be used to insert an invisible anchor (reference points) into a page that can later be used by internal wiki links. == Usage == To create a custom anchor, use <code><nowiki>{{Anchor|Anchor Name}}</nowiki></code> anywhere in the page. For example, if you create the anchor <code><nowiki>{{Anchor|Example Anchor}}</nowiki></code> in the page <code><nowiki>[[Example]]</nowiki></code>, you can access it through the internal link <code><nowiki>[[Example#Example Anchor]]</nowiki></code>. Remember that you can create a [[support:Redirect|redirect]] to this template so that you can call it more easily, such as with <code><nowiki>{{a|Anchor Name}}</nowiki></code>. <noinclude>[[Category:Template documentation]]</noinclude> 4b0ddb50416a354db262e62617d9b45056f4d526 Template:Character icon 10 87 88 2025-03-25T22:48:55Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Link icon|{{{1|}}}|{{{2|}}}|type=Character}}</includeonly><noinclude>{{documentation}}[[Category:Formatting templates]]</noinclude> 24bad84fd5dea93cab210dfd592fda86af09eb87 Template:Character icon/doc 10 88 89 2025-03-25T22:48:56Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki == Summary == <templatedata> { "params": { "1": { "aliases": [ "page" ], "label": "Page Name", "description": "The name for the target page.", "example": "Page Name", "type": "wiki-page-name", "required": true }, "2": { "aliases": [ "label" ], "label": "Link Label", "description": "The text to the be displayed on the link icon's label.", "example": "Alternative Page Name", "type": "line" } }, "description": "Use this template to display an icon next to a page link.\n\nThis template assumes that each page has an icon uploaded at a specific location, namely \"File:Page Name (Character).png\".", "format": "inline" } </templatedata> == Examples == For the examples below, <code><nowiki>File:Invisible Boy (Character).png</nowiki></code> was used as the icon for a page called <code>Invisible Boy</code>. {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{Character icon|Invisible Boy}}</nowiki></code> || {{Character icon|Invisible Boy}} |- | <code><nowiki>{{Character icon|Invisible Boy|The Invisible Boy}}</nowiki></code> || {{Character icon|Invisible Boy|The Invisible Boy}} |- | <code><nowiki>{{Character icon|Invisible Boy|notext}}</nowiki></code> || {{Character icon|Invisible Boy|notext}} |- | <code><nowiki>{{Character icon|Missing Boy}}</nowiki></code> (Missing Page Icon) || {{Character icon|Missing Boy}} |} == Dependencies== For this template to work properly, you need the following: * The base {{tl|Link icon}} template. * The <code>.link-icon</code> class and any related classes, found in [[MediaWiki:Common.css]]. 0999a706143c16f5ed970816e7825239cfce9547 Template:Cleanup 10 89 90 2025-03-25T22:48:56Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = gold | icon = Cleanup.svg | message = This page does not meet '''{{SITENAME}}'''<nowiki/>'s page quality standards. You can [{{fullurl:{{FULLPAGENAME}}|action=edit}} edit it] to help fix grammar, formatting, or code issues. | tiny = {{{tiny|}}} | class = {{{class|}}} | date = {{{date|}}} }}<!-- -->{{#ifeq: {{lc:{{{nocat|}}}}} | yes ||[[Category:Pages in need of improvement]]}}</includeonly><!-- --><noinclude>{{Cleanup|nocat=yes}} {{doc|Template:Ambox/doc}}</noinclude> 9c9fb940d733227f74a7ce12720d22f569bd4d3e Template:Cleanup/doc 10 90 91 2025-03-25T22:48:57Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Template:Clear 10 91 92 2025-03-25T22:48:58Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <div style="clear:{{{1|both}}};" class={{{class|}}}></div><noinclude> {{documentation}} </noinclude> 5b24b9fd5cc166a8c486e2422d5df465206ed39c Template:Clear/doc 10 92 93 2025-03-25T22:48:59Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template allows you to [https://developer.mozilla.org/en-US/docs/Web/CSS/clear clear] the left side, the right side, or both by adding <code>&lt;div style="clear:left/right/both;"&gt;&lt;/div&gt;</code> ==Usage== {{tlx|Clear}}: Makes content wait until existing content is completed in all columns. Often used to stop text from flowing next to unrelated images. An optional <code>class</code> parameter can additionally be given for custom functionality. To clear the left, simply put {{tlx|Clear|left}}. To clear the right, put {{tlx|Clear|right}}. To clear both sides, put {{tlx|Clear}}. This template can also be called with {{tlx|-}} for short. <templatedata> { "params": { "1": { "label": "Direction", "description": "Which direction to clear", "type": "string", "default": "both", "suggestedvalues": [ "left", "right", "both" ] }, "class": { "label": "Class", "description": "A class to give to the clear", "type": "string" } }, "description": "Clears the left, right, or both.", "format": "inline" } </templatedata> <noinclude> [[Category:Template documentation]] </noinclude> 30e700cb1ba6902a86860319bd230680193d3b04 Template:Color 10 93 94 2025-03-25T22:49:01Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><span class="color">{{{1}}}&nbsp;<span class="color__splotch" style="background-color: {{{1}}};" title="{{{1}}}"></span></span>[[Category:Pages with colors]]</includeonly><noinclude> {{doc}} [[Category:Formatting templates]] </noinclude> 8d576236ad82770d3c04720d4ac105edcb835874 Template:Color/doc 10 94 95 2025-03-25T22:49:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template creates a small color splotch with a given background color next to a plaintext color code. This is useful for previewing colors. ==Usage== {{tlx|color|<color>}} Where <code><color></code> is any valid [https://developer.mozilla.org/en-US/docs/Web/CSS/color_value CSS color]. ==Examples== <pre> My favorite color is {{color|darkgreen}} I think the current {{color|#6d8afb}} of links should be changed to a {{color|#6df4fb}} RGB is cool too, you can do {{color|rgb(128,255,128)}}, or even transparency with {{color|rgba(128,255,128,0.5)}}. </pre> Produces: My favorite color is {{color|darkgreen}} I think the current {{color|#6d8afb}} of links should be changed to a {{color|#6df4fb}} RGB is cool too, you can do {{color|rgb(128,255,128)}}, or even transparency with {{color|rgba(128,255,128,0.5)}}. <noinclude>[[Category:Template documentation]]</noinclude> cb66b177cf785e1b3f60e28e36852b253e4b3d82 Template:Ct 10 95 96 2025-03-25T22:49:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <code><nowiki>[</nowiki>[[Special:CargoTables/{{{1}}}|{{{1}}}]]<nowiki>]</nowiki>{{#if:{{{2|}}}|.{{{2}}}}}</code><noinclude> [[Category:Formatting templates]]</noinclude> d868545d4d3eeb1545e963d063199a68abba7836 Template:Delete 10 96 97 2025-03-25T22:49:03Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = grey | icon = Delete.svg | title = Candidate for Deletion | message = This page lacks relevance for '''{{SITENAME}}''' and is a candidate for '''deletion'''. | tiny = {{{tiny|}}} | class = {{{class|}}} | date = {{{date|}}} }}<!-- -->{{#ifeq: {{lc:{{{nocat|}}}}} | yes ||[[Category:Candidates for deletion]]}}</includeonly><!-- --><noinclude>{{Delete|nocat=yes}} {{doc|Template:Ambox/doc}}</noinclude> 6c827de94518d7f5f1635b13425be0d0fb4078da Template:Delete/doc 10 97 98 2025-03-25T22:49:04Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Template:Disambig 10 98 99 2025-03-25T22:49:05Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:Disambiguation]] f220bcb889e0ce686a839d64ec6c4359b0e8bfb7 Template:Disambiguation 10 99 100 2025-03-25T22:49:06Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:topic|<!-- start vd -->{{#if:{{{topic|}}} | {{{topic}}} | {{PAGENAME}} }}<!-- end if -->}}<!-- end vd -->{{#vardefine:disambig|<!-- start vd -->{{#if:{{{1|}}}<!-- start custom disambig if -->|{{{1}}}<!-- start label if -->{{#if:{{{2|}}} | {{!}}{{{2}}} }}<!-- end label if -->|{{#var:topic}} (disambiguation)<!-- else; use regular disambig -->}}<!-- end custom disambig if -->}}<!-- end vd -->{{Hatnote|<!-- -->This page is about '''{{#var:topic}}'''. For other uses, see [[{{#var:disambig}}]].<!-- -->|icon=Disambig.svg<!-- -->}}<!-- --></includeonly><!-- --><noinclude>{{doc}}[[Category:Hatnote templates]]</noinclude> c4c62e7a1876492eb970ea182cf4ac0bcad97913 Template:Disambiguation/doc 10 100 101 2025-03-25T22:49:07Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <templatedata> { "params": { "1": { "label": "Disambiguation Page", "description": "A custom disambiguation page name.", "example": "Disambiguation Page", "type": "wiki-page-name" }, "2": { "label": "Link Label", "description": "A label for the custom disambiguation page.", "example": "Alternative Page Name", "type": "line" }, "topic": { "label": "Custom Topic", "description": "In case {{PAGENAME}} does not describe the topic, this can be used to display a custom topic", "example": "a custom topic", "default": "{{PAGENAME}}", "type": "line" } }, "description": "This hatnote template is meant to be used at the top of an article to indicate the existence of a disambiguation page.", "paramOrder": [ "1", "2", "topic" ], "format": "inline" } </templatedata> == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{Disambiguation}}</nowiki></code> || {{Disambiguation|topic=Example}} |- | <code><nowiki>{{Disambiguation|Special:Random|topic=Example}}</nowiki></code> || {{Disambiguation|Special:Random|topic=Example}} |- | <code><nowiki>{{Disambiguation|Special:Random|Page Label|topic=this particular topic}}</nowiki></code> || {{Disambiguation|Special:Random|Page Label|topic=this particular topic}} |} == Dependencies == For this template to work properly, you need the following: * The {{tl|Hatnote}} base template. * The <code>.hatnote</code> class, found in [[MediaWiki:Common.css]]. == Source == Roughly based on [[wikipedia:Template:About|Wikipedia's About Template]]. <noinclude>[[Category:Template documentation]]</noinclude> 5fce9c689120c57454571ff0e60a2cd447df5713 Template:Discord 10 101 102 2025-03-25T22:49:08Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#if:{{{1|{{{id|}}}}}}|<!-- -->{{#ifeq: {{lc:{{{full|}}}<!-- -->}} | yes<!-- display the full widget: -->|<div class="DiscordIntegrator" style="width: {{#or:{{{width|}}}|100%}}; height: {{#or:{{{height|}}}|300px}}" data-id="{{{1|{{{id}}}}}}" data-logged-in="{{{loggedIn}}}" data-theme="{{{theme|}}}" data-width="100%" data-height="100%"><!-- -->If you see this, your JavaScript might be disabled or DiscordIntegrator plugin isn't working. If the latter, please contact a wiki administrator.</div><!-- display only the small widget: -->|<div id="discord-compact-widget" data-id="{{{1|{{{id}}}}}}"></div><!-- -->}}<!-- case: id is not supplied -->|<strong class="error">DiscordIntegrator error: ID of the server isn't supplied.</strong> For instructions on how to find a Discord server ID, see [https://support.discord.com/hc/articles/206346498 this Discord Help Center article]<!-- -->}}</includeonly><!-- -->[[Category:Pages with Discord embeds]]<noinclude>{{Documentation}} [[Category:Templates]]</noinclude> 7d39c3a9d1b4eb8e95becaf418c16ec30cb9c077 Template:Discord/doc 10 102 103 2025-03-25T22:49:09Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template allows you to either use [[support:DiscordCompact|DiscordCompact]] or [[support:DiscordWidget|DiscordWidget]] to display information about a certain Discord server. == Usage == In order to be able to show a Discord server widget on your wiki, first go to your Discord server and do the following: * Open the <code>Server Settings</code>, then go to the <code>Widget</code> section. * Enable the Widget. * Copy the <code>Server ID</code>. Then, do the following depending on the type of widget you want to use (compact or full). === Compact Widget (Default) === {{main|support:DiscordCompact{{!}}DiscordCompact}} The compact widget is the default one. To use it, simply add the template with the server ID either as the '''first''' parameter or as the <code>id</code> parameter: * <code><nowiki>{{Discord|serverID}}</nowiki></code> * <code><nowiki>{{Discord|id=serverID}}</nowiki></code> === Full Widget === {{main|support:DiscordWidget{{!}}DiscordWidget}} To use the full version of the Discord widget, you have to specify <code>full=yes</code> as one of the template parameters, with the ID either as the '''first''' parameter or as the <code>id</code> parameter: * <code><nowiki>{{Discord|serverID|full=yes}}</nowiki></code> * <code><nowiki>{{Discord|full=yes|id=serverID}}</nowiki></code> You can further customize the widget with the <code>width</code>, <code>height</code> and other parameters. See the Examples section and the full documentation for DiscordWidget on the [[support:DiscordWidget|Support Wiki]]. == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{Discord|951501892553424917}}</nowiki></code><br/><code><nowiki>{{Discord|id=951501892553424917}}</nowiki></code> || {{Discord|951501892553424917}} |- | <code><nowiki>{{Discord|951501892553424917}|full=yes}</nowiki></code> || {{Discord|951501892553424917|full=yes}} |- | <pre><nowiki>{{Discord|full=yes |id = 951501892553424917 |width = 300px |height = 500px }}</nowiki></pre> || {{Discord|full=yes|id=951501892553424917|width=300px|height=500px}} |} == Dependencies == * As stated before, both Compact and Widget require the given Discord server to have Widgets enabled in its Server Settings. * DiscordCompact requires [[support:DiscordCompact#MediaWiki:DiscordCompact.js-0|DiscordCompact.js]] code, present in [[MediaWiki:Common.js]]. * DiscordWidget requires [[dev:DiscordIntegrator.js|DiscordIntegrator.js]] code, present in [[MediaWiki:Common.js]]. == TemplateData == <templatedata> { "params": { "1": { "aliases": [ "id" ], "label": "Server ID", "description": "The Discord server's ID.", "example": "951501892553424917", "type": "line", "required": true }, "full": { "label": "Use Full Widget", "example": "yes", "type": "boolean", "description": "Do you want to use the full widget?" }, "width": { "label": "Width (Full Widget only)", "description": "A custom width for the full widget.", "example": "300px", "type": "line" }, "height": { "label": "Height (Full Widget only)", "description": "A custom height for the full widget.", "example": "500px", "type": "line" } }, "description": "This template allows you to either use DiscordCompact or DiscordWidget extensions to display information about a certain Discord server.", "paramOrder": [ "1", "full", "width", "height" ], "format": "block" } </templatedata> 641236c3823c42440e97734170310cd9877aa84e Template:Distinguish 10 103 104 2025-03-25T22:49:10Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:text|<!-- start vd -->{{#if:{{{text|}}} | {{{text}}} |<!-- start top if -->{{#if:{{{2|}}}<!-- if more than one page -->|[[{{{1}}}]]{{#if:{{{3|}}}<!-- start concat if -->|, [[{{{2}}}]] or [[{{{3}}}]]<!-- concat two -->|<nowiki> </nowiki>or [[{{{2}}}]]<!-- else; concat one -->}}<!-- end concat if -->|[[{{{1}}}]]<!-- else; one page only -->}}<!-- end custom disambig if -->}}<!-- end if -->}}<!-- end vd -->{{Hatnote|<!-- -->Not to be confused with {{#var:text}}.<!-- -->}}<!-- --></includeonly><!-- --><noinclude>{{doc}}[[Category:Hatnote templates]]</noinclude> 67ae5406ffd29bec56cfe7ad6527bb09a9733496 Template:Distinguish/doc 10 104 105 2025-03-25T22:49:11Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <templatedata> { "params": { "1": { "label": "Alternative", "description": "The alternative page.", "example": "Alternative Page", "type": "wiki-page-name", "suggested": true }, "2": { "label": "Second Alternative", "description": "A second alternative page.", "example": "Second Alternative Page", "type": "wiki-page-name" }, "3": { "label": "Third Alternative", "description": "A third alternative page.", "example": "Third Alternative Page", "type": "wiki-page-name" }, "text": { "label": "Alternative Text", "description": "Instead of using pages, you can provide a full alternative text. This parameter overrides other provided parameters.", "example": "the alternative page, [[Alternative Page]]", "type": "line" } }, "description": "This hatnote template is meant to be used to indicate possible alternatives to what the reader wants to find.", "paramOrder": [ "1", "2", "3", "text" ], "format": "inline" } </templatedata> == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{Distinguish|Special:Uncategorizedpages}}</nowiki></code> || {{Distinguish|Special:Uncategorizedpages}} |- | <code><nowiki>{{Distinguish|Special:Uncategorizedpages|Special:Uncategorizedfiles}}</nowiki></code> || {{Distinguish|Special:Uncategorizedpages|Special:Uncategorizedfiles}} |- | <code><nowiki>{{Distinguish|Special:Uncategorizedpages|Special:Uncategorizedfiles|Special:Uncategorizedcategories}}</nowiki></code> || {{Distinguish|Special:Uncategorizedpages|Special:Uncategorizedfiles|Special:Uncategorizedcategories}} |- | <code><nowiki>{{Distinguish|Special:Uncategorizedpages{{!}}Page 1}}</nowiki></code> (Custom link label) || {{Distinguish|Special:Uncategorizedpages{{!}}Page 1}} |- | <code><nowiki>{{Distinguish|text = Page 1, another name for [[Special:Uncategorizedpages]]}}</nowiki></code> || {{Distinguish|text = Page 1, another name for [[Special:Uncategorizedpages]]}} |} == Dependencies == For this template to work properly, you need the following: * The {{tl|Hatnote}} base template. * The <code>.hatnote</code> class, found in [[MediaWiki:Common.css]]. == Source == Roughly based on [[wikipedia:Template:Distinguish|Wikipedia's Distinguish Template]]. <noinclude>[[Category:Template documentation]]</noinclude> 2a06ed576ae6479add20834628f9378c657cb4fb Template:Doc 10 105 106 2025-03-25T22:49:12Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:Documentation]] 041222999c2c4765a4663432058f50686fb65f40 Template:Documentation 10 106 107 2025-03-25T22:49:13Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- --><div class="documentation"><!-- --><div class="documentation-header"><!-- -->[[File:Template-{{#ifexist:{{#vardefineecho:docpage|{{{1|Template:{{#replace:{{{1|{{PAGENAME}}/doc}}}|Template:|}}}}}<!-- end vde -->}}|{{#if:{{{baddoc|}}}|bad}}|no}}info.svg|50px|link=]] <!-- --><span style="font-weight: bold; font-size: 125%; margin-right: 10px;">Documentation</span> <!-- -->{{#ifeq:{{SUBPAGENAME}}|doc|<!--nothing-->|<!-- -->{{#ifexist:{{#var:docpage}}|<!-- --><span style="font-size: 90%; font-style: italic;"><!-- -->[{{fullurl:{{#var:docpage}}|action=edit}} Edit] this documentation at [{{fullurl:{{#var:docpage}}|redirect=no}} {{FULLPAGENAMEE:{{#var:docpage}}}}].<!-- --></span><!-- -->}}<!-- -->}}<!-- --><div style="text-align: right; margin-left: 5px;"><!-- -->([{{fullurl:{{FULLPAGENAMEE}}/doc|action=edit}} edit] • [{{fullurl:{{FULLPAGENAMEE}}/doc|action=history}} history] • [{{fullurl:{{FULLPAGENAMEE}}|action=purge}} purge])<!-- --></div><!-- --></div><!-- <!-- leave line break here --> {{#if:{{{lua|}}}|{{UsesLua|{{{lua}}} }} }} <!-- documentation text/error box begins here --> <div style="border-radius: 5px; border: 2px solid var(--wiki-content-border-color); margin: 0.5em auto 1em; padding: 0.8em 1.2em; background: var(--wiki-content-background-color--secondary);"> <!-- -->{{#ifexist:{{#var:docpage}}|<!-- If there is documentation --> {{ {{#var:docpage}} }} <!-- Else -->|<!-- -->No documentation subpage exists yet for this template. [{{fullurl:{{FULLPAGENAMEE:Template:{{{1|{{PAGENAME}}}}}}}/doc|action=edit&preload=Template:Documentation/preload}} Create one now].<!-- -->[[Category:Templates with no documentation]]<!-- -->}}<!-- leave line break here --> <!-- documentation text/error box ends here --> </div> <!-- -->{{#ifeq:{{SUBPAGENAME}}|doc|<!-- -->{{#ifeq:{{BASEPAGENAME}}|Doc|<!--nothing-->|<!-- only if page is not Template:Documentation -->This is the documentation page, it should be transcluded into the main template page. See {{tlx|doc}} for more information. <!-- -->[[Category:Template documentation]]<!-- -->}}<!-- -->}}<!-- --></div><!-- --></includeonly><!-- --><noinclude>{{Documentation}} [[Category:Documentation templates| ]] </noinclude> c4c3117e700d89854599fb352f60792ed2165be0 Template:Documentation/doc 10 107 108 2025-03-25T22:49:13Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Use {{tl|documentation}} inside of the <code><nowiki><noinclude></noinclude></nowiki></code> section on your template. Then create your template at the <code>/doc</code> subpage of your template. <noinclude>[[Category:Template documentation]]</noinclude> 055b0481a1967951c59f15a09b92767c90baa8dd Template:Example character infobox 10 108 109 2025-03-25T22:49:14Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#invoke:Infobox|main <!-- See https://support.wiki.gg/wiki/DRUID_infoboxes for extra documentation --> <!-- the "kind" categorizes this type of infobox. For example, you might want to write `Character`, `Level`, or `Item`. --> <!-- This `kind` value should be unique to this template, and no other infobox template should have the same value --> |kind=example-1 <!-- You can almost certainly leave the separator alone, unless one of your *section names* has a comma in it --> |sep=, <!-- feel free to edit the 300px but mostly try to avoid changing this next line unless you are adding tabs --> |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}300px]]}} <!-- every infobox needs a |sections= parameter, which lists the groups of sections, in order top to bottom --> |sections=General Info, Stats <!-- for each section, specify the list of fields that you want to show up in that section, top to bottom --> <!-- empty fields (not specified on the content page) will not show up --> |General Info=Region,Element |Stats=Attack, HP, Armor, Attack Speed <!-- this field formats the `Attack Speed` parameter when it's specified by the content page, adding a % sign to the end of it. --> <!-- this is an optional operation to do, only do it if you need to provide some extra formatting --> |Attack Speed={{#if:{{{Attack Speed|}}}|{{{Attack Speed}}}%}} }}<!-- Here is the above code without comments for easier copy-pasting: {{#invoke:Infobox|main |kind=example-1 |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}300px]]}} |sections=General Info, Stats |General Info=Region,Element |Stats=Attack, HP, Armor, Attack Speed |Attack Speed={{#if:{{{Attack Speed|}}}|{{{Attack Speed}}}%}} }} --></includeonly><noinclude> {{documentation}} [[Category:Infobox templates]]</noinclude> f49d0f82d5a212306ff66b8fee112ecf88123576 Template:Example character infobox/doc 10 109 110 2025-03-25T22:49:15Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This is an example character infobox using the [[support:DRUID infoboxes|DRUID infoboxes]] framework. You can edit it, rename it, or delete it as desired. == Modify this template == To see how DRUID works, please '''edit this page'''! It has several comments explaining the different parts of how to make an infobox. == Copyable code for use on other content pages == If you want to create pages using this infobox, you can use the snippet below. Please understand, this code is for CONTENT PAGES ONLY!! It does not have anything to do with changing what the template supports. <syntaxhighlight lang="wikitext" style="overflow: auto;"> {{Example character infobox |title= |image= |Region= |Element= |Attack= |HP= |Armor= |Attack Speed= }} </syntaxhighlight><noinclude>[[Category:Template documentation]]</noinclude> f822e1098d3a677ff70368340a4b264c5f69cd6a Template:Extension DPL 10 110 111 2025-03-25T22:49:16Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <noinclude>This page was automatically created. It serves as an anchor page for all '''[[Special:WhatLinksHere/Template:Extension_DPL|invocations]]''' of [https://www.mediawiki.org/wiki/Special:MyLanguage/Extension:DynamicPageList3 Extension:DynamicPageList3].</noinclude> 087ffd4625ae7b1fea3436ec3f929e82ee739d29 Template:Flag 10 111 112 2025-03-25T22:49:17Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- --><span class="country-flag" title="{{{2|}}}">{{#if: {{{1|}}} | [[File:Flag {{{1|}}}.svg|x20px|link=]] | }}</span><!-- --></includeonly><!-- --><noinclude>{{doc}}[[Category:Formatting templates]]</noinclude> 9802f61bee0e36120c835608ccee85e72384341b Template:Flag/doc 10 112 113 2025-03-25T22:49:18Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This formatting template allows you to display country flags inline. Available country flags can be seen in [[dev:Category:Country_flags|our Commons Wiki]]. == Usage == The template can be used with the following formatting: <code><nowiki>{{flag|code|Legend}}</nowiki></code>, where: * <code>code</code> is the [[wikipedia:ISO 3166-1 alpha-2|ISO 3166-1 alpha-2]] code for the country flag. * <code>Legend</code> is the legend displayed on hover (optional). == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{flag|ca|Canada}}</nowiki></code> || {{flag|ca|Canada}} |} <noinclude>[[Category:Template documentation]]</noinclude> 1fb455be1ffbed259dd27df18dd447e605746ed4 Template:For 10 113 114 2025-03-25T22:49:19Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:text|<!-- start vd -->{{#if:{{{3|}}}<!-- if more than one page -->|[[{{{2}}}]]{{#if:{{{4|}}}<!-- start concat if -->|, [[{{{3}}}]] and [[{{{4}}}]]<!-- concat two -->|<nowiki> </nowiki>and [[{{{3}}}]]<!-- else; concat one -->}}<!-- end concat if -->|[[{{{2}}}]]<!-- else; one page only -->}}<!-- end if -->}}<!-- end vd -->{{Hatnote|<!-- -->For {{{1}}}, see {{#var:text}}.<!-- -->}}<!-- --></includeonly><!-- --><noinclude>{{doc}}[[Category:Hatnote templates]]</noinclude> 1899e48855153617f7c0bf3087b781bc80f0395c Template:For/doc 10 114 115 2025-03-25T22:49:20Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <templatedata> { "params": { "1": { "label": "Topic", "description": "The topic the following pages are about.", "example": "more information", "type": "line", "required": true }, "2": { "label": "Related Page", "description": "A related page.", "example": "Related Page", "type": "wiki-page-name", "required": true }, "3": { "label": "Second Page", "description": "A second related page.", "example": "Second Related Page", "type": "wiki-page-name" }, "4": { "label": "Third Page", "description": "A third related page.", "example": "Third Related Page", "type": "wiki-page-name" } }, "description": "This hatnote template is meant to be used to show pages related to a topic the reader might want to visit.", "paramOrder": [ "1", "2", "3", "4" ], "format": "inline" } </templatedata> == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{For|more information|Special:WantedPages}}</nowiki></code> || {{For|more information|Special:WantedPages}} |- | <code><nowiki>{{For|more information|Special:WantedPages|Special:UncategorizedPages}}</nowiki></code> || {{For|more information|Special:WantedPages|Special:UncategorizedPages}} |- | <code><nowiki>{{For|more information|Special:WantedPages|Special:UncategorizedPages|Special:UncategorizedCategories}}</nowiki></code> || {{For|more information|Special:WantedPages|Special:UncategorizedPages|Special:UncategorizedCategories}} |- | <code><nowiki>{{For|more information|Special:WantedPages{{!}}Page 1}}</nowiki></code> (Custom link label) || {{For|more information|Special:WantedPages{{!}}Page 1}} |} == Dependencies == For this template to work properly, you need the following: * The {{tl|Hatnote}} base template. * The <code>.hatnote</code> class, found in [[MediaWiki:Common.css]]. == Source == Roughly based on [[wikipedia:Template:For|Wikipedia's For Template]]. <noinclude>[[Category:Template documentation]]</noinclude> b2a30a9bf8acff259d5e86654a2de69c2d5e4fff Template:From Wikipedia 10 115 116 2025-03-25T22:49:21Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = darkblue | icon = Wikipedia.svg | title= This code is adapted from [[wikipedia:Main Page|Wikipedia]]. | message = For the original code, see the following pages: {{#arraymap:{{{1|}}}|,|%s|[[wikipedia:%s|%s]]}} | tiny = {{{tiny|}}} | class = {{{class|}}} }}</includeonly><noinclude>{{doc}}</noinclude> 0bb256ef5acc38fb0cfbdacc22e75aab89bd6e2c Template:Gad 10 116 117 2025-03-25T22:49:22Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <code>Gadget-[[MediaWiki:Gadget-{{{1}}}|{{{1}}}]]</code><noinclude>[[Category:Formatting templates]]</noinclude> dd027468a6022472506b1fc2973d6299ec01e854 Template:Hatnote 10 117 118 2025-03-25T22:49:23Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->[[Category:Pages with hatnotes]]<!-- --><div class="hatnote {{#if:{{{icon|}}}|icon}}">{{#if:{{{icon|}}}|[[File:{{{icon}}}|x22px]]<nowiki> </nowiki>}}{{{1|}}}</div><!-- --></includeonly><!-- --><noinclude>{{doc}}[[Category:Hatnote templates| ]]</noinclude> c239246055fdd6c2f4aa85033ba3e93b9baa4733 Template:Hatnote/doc 10 118 119 2025-03-25T22:49:24Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{No direct use}} == List of hatnote templates == * {{tl|Disambiguation}} * {{tl|Distinguish}} * {{tl|For}} * {{tl|Main}} == Dependencies == For this template to work properly, you need the following: * The <code>.hatnote</code> class, found in [[MediaWiki:Common.css]]. * The <code>--wiki-content-border-color--secondary</code> CSS variable, defined in [[MediaWiki:Common.css]]. <noinclude>[[Category:Template documentation]]</noinclude> 464f2f866befaf4cfa47f68ab0ad4f170c13463d Template:I 10 119 120 2025-03-25T22:49:24Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Link icon]] 6ebdedb4de95efaa3e6ca27590e79aca674f2364 Template:Item icon 10 120 121 2025-03-25T22:49:25Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Link icon|{{{1|}}}|{{{2|}}}|type=Item}}</includeonly><noinclude>{{documentation}}[[Category:Formatting templates]]</noinclude> 6564279e3808e659b8034ad4b96f4f9e9e498b57 Template:Item icon/doc 10 121 122 2025-03-25T22:49:26Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki == Summary == <templatedata> { "params": { "1": { "aliases": [ "page" ], "label": "Page Name", "description": "The name for the target page.", "example": "Page Name", "type": "wiki-page-name", "required": true }, "2": { "aliases": [ "label" ], "label": "Link Label", "description": "The text to the be displayed on the link icon's label.", "example": "Alternative Page Name", "type": "line" } }, "description": "Use this template to display an icon next to a page link.\n\nThis template assumes that each page has an icon uploaded at a specific location, namely \"File:Page Name (Item).png\".", "format": "inline" } </templatedata> == Examples == For the examples below, <code><nowiki>File:Mystic Feather (Item).png</nowiki></code> was used as the icon for a page called <code>Mystic Feather</code>. {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{Item icon|Mystic Feather}}</nowiki></code> || {{Item icon|Mystic Feather}} |- | <code><nowiki>{{Item icon|Mystic Feather|Mystic Feathers}}</nowiki></code> || {{Item icon|Mystic Feather|Mystic Feathers}} |- | <code><nowiki>{{Item icon|Mystic Feather|notext}}</nowiki></code> || {{Item icon|Mystic Feather|notext}} |- | <code><nowiki>{{Item icon|Missing Item}}</nowiki></code> (Missing Page Icon) || {{Item icon|Missing Item}} |} == Dependencies== For this template to work properly, you need the following: * The base {{tl|Link icon}} template. * The <code>.link-icon</code> class and any related classes, found in [[MediaWiki:Common.css]]. 4dfcab6f3d3c88596068607685645f29666f0141 Template:Iter 10 122 123 2025-03-25T22:49:27Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#vardefine:varname|ITER_INDEX_{{#if:{{{1|}}}|{{{1}}}|default}}<!-- end vardefine -->}}<!-- main logic -->{{#vardefineecho:{{#var:varname}}| {{#expr: {{#ifeq:{{lc:{{{reset|}}}<!-- end lc -->}} |yes |0 |{{#var:{{#var:varname}}|0}} <!-- end ifeq -->}} + {{#if:{{{get|}}}|0|1}} <!-- end expr -->}} <!-- end vde -->}}</includeonly><noinclude>{{documentation}} [[Category:Templates]]</noinclude> c37a3625d58a115a140f129da248ec1c9f6cb55e Template:Iter/doc 10 123 124 2025-03-25T22:49:28Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template helps you create indexed columns in tables (particularly [[support:Cargo|Cargo]] queries) and to retrieve iterator values when using the parser function <code><nowiki>{{#arraymaptemplate</nowiki></code> (bundled with Extension:ParserPower on wiki.gg). == Simple counting == <pre> * {{iter|}} * {{iter|}} * {{iter|}} * {{iter|}} </pre> * {{iter|}} * {{iter|}} * {{iter|}} * {{iter|}} == Reset the counter == <pre> * {{iter|reset=yes}} * {{iter|}} * {{iter|reset=yes}} * {{iter|}} </pre> * {{iter|reset=yes}} * {{iter|}} * {{iter|reset=yes}} * {{iter|}} == Multiple counters == <pre> * {{iter|key1}} * {{iter|key2}} * {{iter|key2}} * {{iter|key1}} </pre> * {{iter|key1}} * {{iter|key2}} * {{iter|key2}} * {{iter|key1}} == Get value without incrementing == <pre> * {{iter|reset=yes}} * {{iter|}} * {{iter|}} * {{iter|get=yes}} </pre> * {{iter|reset=yes}} * {{iter|}} * {{iter|}} * {{iter|get=yes}} <noinclude> [[Category:Template documentation]] </noinclude> 20b5a53a6457493d2a2a9774b803511678a65760 Template:Key 10 124 125 2025-03-25T22:49:29Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:platform | {{#if: {{{2|}}} | {{#switch: {{lc:{{{1|}}}}} <!-- Desktop --> |mouse |keyboard=keyboard <!-- Mobile --> |gesture=gesture <!-- Microsoft --> |xboxseries |xbox=Xbox |xbox one |xbone |xbox1 |xboxone=xboxone |xbox 360 |xb360 |xbox360 |360=360 <!-- Sony --> |ps |ps5 |playstation |ds |dualsense=DualSense |playstation 4 |ps4=PS4 |playstation 3 |ps3=ps3 <!-- Nintendo --> |ns |switch=Switch |wii=wii }} | undefined }} }}<!-- -->{{#vardefine:key | {{#if: {{{2|}}} | {{ucfirst:{{{2}}}}} | {{ucfirst:{{{1}}}}} }} }}<!-- -->{{#vardefine:img | {{#if: {{{2|}}} | [[File:{{#var:platform}} {{#var:key}}.png|x25px|link=]] }} | Undefined }}<!-- --><span class="key">{{#var:img}}</span><!-- --></includeonly><!-- --><noinclude>{{doc}}</noinclude> 45576cb62a8104687b5b7ac26b042283c80ecae6 Template:Key/doc 10 125 126 2025-03-25T22:49:30Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <tabber> |-|Desktop={{:Template:Key/doc/Keyboard}} |-|Mobile={{:Template:Key/doc/Gesture}} |-|Xbox={{:Template:Key/doc/Xbox}} |-|DualSense={{:Template:Key/doc/DualSense}} |-|PlayStation 4={{:Template:Key/doc/PS4}} |-|Nintendo Switch={{:Template:Key/doc/Nintendo Switch}} </tabber> <noinclude>[[Category:Key template documentation]]</noinclude> 19eb9be1ca2c7112f63dd11c58d3888327dcca75 Template:Key/doc/DualSense 10 126 127 2025-03-25T22:49:31Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Images source: [[dev:Category:DualSense input images]] === Buttons === <code><nowiki>{{Key|PS|Directional}}</nowiki></code> {{Key|PS|Directional}} <code><nowiki>{{Key|PS|Directional Left}}</nowiki></code> {{Key|PS|Directional Left}} <code><nowiki>{{Key|PS|Directional Right}}</nowiki></code> {{Key|PS|Directional Right}} <code><nowiki>{{Key|PS|Directional Up}}</nowiki></code> {{Key|PS|Directional Up}} <code><nowiki>{{Key|PS|Directional Down}}</nowiki></code> {{Key|PS|Directional Down}} <code><nowiki>{{Key|PS|Left Stick}}</nowiki></code> {{Key|PS|Left Stick}} <code><nowiki>{{Key|PS|Right Stick}}</nowiki></code> {{Key|PS|Right Stick}} <code><nowiki>{{Key|PS|Touch Pad}}</nowiki></code> {{Key|PS|Touch Pad}} <code><nowiki>{{Key|PS|Circle}}</nowiki></code> {{Key|PS|Circle}} <code><nowiki>{{Key|PS|Cross}}</nowiki></code> {{Key|PS|Cross}} <code><nowiki>{{Key|PS|Square}}</nowiki></code> {{Key|PS|Square}} <code><nowiki>{{Key|PS|Triangle}}</nowiki></code> {{Key|PS|Triangle}} <code><nowiki>{{Key|PS|Create}}</nowiki></code> {{Key|PS|Create}} <code><nowiki>{{Key|PS|Options}}</nowiki></code> {{Key|PS|Options}} <code><nowiki>{{Key|PS|L1}}</nowiki></code> {{Key|PS|L1}} <code><nowiki>{{Key|PS|R1}}</nowiki></code> {{Key|PS|R1}} <code><nowiki>{{Key|PS|L2}}</nowiki></code> {{Key|PS|L2}} <code><nowiki>{{Key|PS|R2}}</nowiki></code> {{Key|PS|R2}} <code><nowiki>{{Key|PS|L3}}</nowiki></code> {{Key|PS|L3}} <code><nowiki>{{Key|PS|R3}}</nowiki></code> {{Key|PS|R3}} <code><nowiki>{{Key|PS|Mute}}</nowiki></code> {{Key|PS|Mute}} <code><nowiki>{{Key|PS|PS}}</nowiki></code> {{Key|PS|PS}} === Diagram === <code><nowiki>{{Key|PS|Controller Diagram}}</nowiki></code> {{Key|PS|Controller Diagram}} <noinclude>[[Category:Key template documentation]]</noinclude> 84fa5123f9494d3572fef65e1aa63dd95ef476be Template:Key/doc/Gesture 10 127 128 2025-03-25T22:49:32Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Images source: [[dev:Category:Gesture input images]] === Fingers === <code><nowiki>{{key|gesture|Finger Front}}</nowiki></code> {{key|gesture|Finger Front}} <code><nowiki>{{key|gesture|Finger Side}}</nowiki></code> {{key|gesture|Finger Side}} === Tap & hold === <code><nowiki>{{key|gesture|Tap}}</nowiki></code> {{key|gesture|Tap}} <code><nowiki>{{key|gesture|Double Tap}}</nowiki></code> {{key|gesture|Double Tap}} <code><nowiki>{{key|gesture|Hold}}</nowiki></code> {{key|gesture|Hold}} === Swipe motions === <code><nowiki>{{key|gesture|Swipe Bottom Left}}</nowiki></code> {{key|gesture|Swipe Bottom Left}} <code><nowiki>{{key|gesture|Swipe Bottom Right}}</nowiki></code> {{key|gesture|Swipe Bottom Right}} <code><nowiki>{{key|gesture|Swipe Down}}</nowiki></code> {{key|gesture|Swipe Down}} <code><nowiki>{{key|gesture|Swipe Left}}</nowiki></code> {{key|gesture|Swipe Left}} <code><nowiki>{{key|gesture|Swipe Right}}</nowiki></code> {{key|gesture|Swipe Right}} <code><nowiki>{{key|gesture|Swipe Top Left}}</nowiki></code> {{key|gesture|Swipe Top Left}} <code><nowiki>{{key|gesture|Swipe Top Right}}</nowiki></code> {{key|gesture|Swipe Top Right}} <code><nowiki>{{key|gesture|Swipe Up}}</nowiki></code> {{key|gesture|Swipe Up}} === Zoom & scroll === <code><nowiki>{{key|gesture|Zoom In}}</nowiki></code> {{key|gesture|Zoom In}} <code><nowiki>{{key|gesture|Zoom Out}}</nowiki></code> {{key|gesture|Zoom Out}} <code><nowiki>{{key|gesture|Scroll Down}}</nowiki></code> {{key|gesture|Scroll Down}} <code><nowiki>{{key|gesture|Scroll Left}}</nowiki></code> {{key|gesture|Scroll Left}} <code><nowiki>{{key|gesture|Scroll Right}}</nowiki></code> {{key|gesture|Scroll Right}} <code><nowiki>{{key|gesture|Scroll Up}}</nowiki></code> {{key|gesture|Scroll Up}} === Circular motions === <code><nowiki>{{key|gesture|Double Rotate}</nowiki></code> {{key|gesture|Double Rotate}} <code><nowiki>{{key|gesture|Full Circle}}</nowiki></code> {{key|gesture|Full Circle}} <code><nowiki>{{key|gesture|Half Circle}}</nowiki></code> {{key|gesture|Half Circle}} <code><nowiki>{{key|gesture|Quarter Circle}}</nowiki></code> {{key|gesture|Quarter Circle}} __NOTOC__ <noinclude>[[Category:Key template documentation]]</noinclude> 0a595b125cc6dbd6ad531c1e989d1929eaf1c6e2 Template:Key/doc/Nintendo Switch 10 128 129 2025-03-25T22:49:33Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Images source: [[dev:Category:Nintendo Switch input images]] === Nintendo Switch === <code><nowiki>{{Key|Switch|a}}</nowiki></code> {{Key|Switch|a}} <code><nowiki>{{Key|Switch|b}}</nowiki></code> {{Key|Switch|b}} <code><nowiki>{{Key|Switch|x}}</nowiki></code> {{Key|Switch|x}} <code><nowiki>{{Key|Switch|y}}</nowiki></code> {{Key|Switch|y}} <code><nowiki>{{Key|Switch|Left Stick}}</nowiki></code> {{Key|Switch|Left Stick}} <code><nowiki>{{Key|Switch|Right Stick}}</nowiki></code> {{Key|Switch|Right Stick}} <code><nowiki>{{Key|Switch|Left Stick Press}}</nowiki></code> {{Key|Switch|Left Stick Press}} <code><nowiki>{{Key|Switch|Right Stick Press}}</nowiki></code> {{Key|Switch|Right Stick Press}} <code><nowiki>{{Key|Switch|-}}</nowiki></code> {{Key|Switch|-}} <code><nowiki>{{Key|Switch|+}}</nowiki></code> {{Key|Switch|+}} <code><nowiki>{{Key|Switch|Capture}}</nowiki></code> {{Key|Switch|Capture}} <code><nowiki>{{Key|Switch|HOME}}</nowiki></code> {{Key|Switch|HOME}} <code><nowiki>{{Key|Switch|L}}</nowiki></code> {{Key|Switch|L}} <code><nowiki>{{Key|Switch|R}}</nowiki></code> {{Key|Switch|R}} <code><nowiki>{{Key|Switch|ZL}}</nowiki></code> {{Key|Switch|ZL}} <code><nowiki>{{Key|Switch|ZR}}</nowiki></code> {{Key|Switch|ZR}} === Pro Controller === <code><nowiki>{{Key|Switch|Pro Control Pad}}</nowiki></code> {{Key|Switch|Pro Control Pad}} <code><nowiki>{{Key|Switch|Pro Control Pad Left}}</nowiki></code> {{Key|Switch|Pro Control Pad Left}} <code><nowiki>{{Key|Switch|Pro Control Pad Right}}</nowiki></code> {{Key|Switch|Pro Control Pad Right}} <code><nowiki>{{Key|Switch|Pro Control Pad Up}}</nowiki></code> {{Key|Switch|Pro Control Pad Up}} <code><nowiki>{{Key|Switch|Pro Control Pad Down}}</nowiki></code> {{Key|Switch|Pro Control Pad Down}} === Joy-Con === <code><nowiki>{{Key|Switch|Directional Left}}</nowiki></code> {{Key|Switch|Directional Left}} <code><nowiki>{{Key|Switch|Directional Right}}</nowiki></code> {{Key|Switch|Directional Right}} <code><nowiki>{{Key|Switch|Directional Up}}</nowiki></code> {{Key|Switch|Directional Up}} <code><nowiki>{{Key|Switch|Directional Down}}</nowiki></code> {{Key|Switch|Directional Down}} ==== Diagrams ==== <code><nowiki>{{Key|Switch|Joy-Con}}</nowiki></code> {{Key|Switch|Joy-Con}} <code><nowiki>{{Key|Switch|Joy-Con Separate}}</nowiki></code> {{Key|Switch|Joy-Con Separate}} <code><nowiki>{{Key|Switch|Joy-Con Left}}</nowiki></code> {{Key|Switch|Joy-Con Left}} <code><nowiki>{{Key|Switch|Joy-Con Right}}</nowiki></code> {{Key|Switch|Joy-Con Right}} __NOTOC__ <noinclude>[[Category:Key template documentation]]</noinclude> 34ef402e3bd539920ee4247d68882ecb53fc6eda Template:Key/doc/PS4 10 129 130 2025-03-25T22:49:34Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Images source: [[dev:Category:PS4 input images]] === D-pad & sticks === <code><nowiki>{{key|PS4|Dpad}}</nowiki></code> {{key|PS4|Dpad}} <code><nowiki>{{key|PS4|Left}}</nowiki></code> {{key|PS4|Left}} <code><nowiki>{{key|PS4|Right}}</nowiki></code> {{key|PS4|Right}} <code><nowiki>{{key|PS4|Up}}</nowiki></code> {{key|PS4|Up}} <code><nowiki>{{key|PS4|Down}}</nowiki></code> {{key|PS4|Down}} <code><nowiki>{{key|PS4|Left Stick}}</nowiki></code> {{key|PS4|Left Stick}} <code><nowiki>{{key|PS4|Right Stick}}</nowiki></code> {{key|PS4|Right Stick}} <code><nowiki>{{key|PS4|Touch Pad}}</nowiki></code> {{key|PS4|Touch Pad}} === Front buttons === <code><nowiki>{{key|PS4|Circle}}</nowiki></code> {{key|PS4|Circle}} <code><nowiki>{{key|PS4|Cross}}</nowiki></code> {{key|PS4|Cross}} <code><nowiki>{{key|PS4|Square}}</nowiki></code> {{key|PS4|Square}} <code><nowiki>{{key|PS4|Triangle}}</nowiki></code> {{key|PS4|Triangle}} <code><nowiki>{{key|PS4|Share}}</nowiki></code> {{key|PS4|Share}} <code><nowiki>{{key|PS4|Options}}</nowiki></code> {{key|PS4|Options}} === Rear buttons === <code><nowiki>{{key|PS4|L1}}</nowiki></code> {{key|PS4|L1}} <code><nowiki>{{key|PS4|R1}}</nowiki></code> {{key|PS4|R1}} <code><nowiki>{{key|PS4|L2}}</nowiki></code> {{key|PS4|L2}} <code><nowiki>{{key|PS4|R2}}</nowiki></code> {{key|PS4|R2}} <noinclude>[[Category:Key template documentation]]</noinclude> 1672e7f0dcd4db09545c96936cfbabcab681cfeb Template:Key/doc/Xbox 10 130 131 2025-03-25T22:49:35Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Images source: [[dev:Category:Xbox input images]] === Series & One === <code><nowiki>{{Key|Xbox|A}}</nowiki></code> {{Key|Xbox|A}} <code><nowiki>{{Key|Xbox|B}}</nowiki></code> {{Key|Xbox|B}} <code><nowiki>{{Key|Xbox|X}}</nowiki></code> {{Key|Xbox|X}} <code><nowiki>{{Key|Xbox|Y}}</nowiki></code> {{Key|Xbox|y}} <code><nowiki>{{Key|Xbox|Left Thumbstick}}</nowiki></code> {{Key|Xbox|Left Thumbstick}} <code><nowiki>{{Key|Xbox|Right Thumbstick}}</nowiki></code> {{Key|Xbox|Right Thumbstick}} <code><nowiki>{{Key|Xbox|Left Thumbstick Press}}</nowiki></code> {{Key|Xbox|Left Thumbstick Press}} <code><nowiki>{{Key|Xbox|Right Thumbstick Press}}</nowiki></code> {{Key|Xbox|Right Thumbstick Press}} <code><nowiki>{{Key|Xbox|LB}}</nowiki></code> {{Key|Xbox|LB}} <code><nowiki>{{Key|Xbox|RB}}</nowiki></code> {{Key|Xbox|RB}} <code><nowiki>{{Key|Xbox|View}}</nowiki></code> {{Key|Xbox|View}} <code><nowiki>{{Key|Xbox|Menu}}</nowiki></code> {{Key|Xbox|Menu}} <code><nowiki>{{Key|Xbox|Button}}</nowiki></code> {{Key|Xbox|Button}} === Xbox Series === <code><nowiki>{{Key|Xbox|D-pad}}</nowiki></code> {{Key|Xbox|D-pad}} <code><nowiki>{{Key|Xbox|D-pad Left}}</nowiki></code> {{Key|Xbox|D-pad Left}} <code><nowiki>{{Key|Xbox|D-pad Right}}</nowiki></code> {{Key|Xbox|D-pad Right}} <code><nowiki>{{Key|Xbox|D-pad Up}}</nowiki></code> {{Key|Xbox|D-pad Up}} <code><nowiki>{{Key|Xbox|D-pad Down}}</nowiki></code> {{Key|Xbox|D-pad Down}} <code><nowiki>{{Key|Xbox|LT}}</nowiki></code> {{Key|Xbox|LT}} <code><nowiki>{{Key|Xbox|RT}}</nowiki></code> {{Key|Xbox|RT}} <code><nowiki>{{Key|Xbox|Share}}</nowiki></code> {{Key|Xbox|Share}} ==== Diagram ==== <code><nowiki>{{Key|Xbox|Series Controller Diagram}}</nowiki></code> {{Key|Xbox|Series Controller Diagram}} === Xbox One === <code><nowiki>{{Key|Xbox|One D-pad}}</nowiki></code> {{Key|Xbox|D-pad}} <code><nowiki>{{Key|Xbox|One D-pad Left}}</nowiki></code> {{Key|Xbox|D-pad Left}} <code><nowiki>{{Key|Xbox|One D-pad Right}}</nowiki></code> {{Key|Xbox|D-pad Right}} <code><nowiki>{{Key|Xbox|One D-pad Up}}</nowiki></code> {{Key|Xbox|D-pad Up}} <code><nowiki>{{Key|Xbox|One D-pad Down}}</nowiki></code> {{Key|Xbox|D-pad Down}} <code><nowiki>{{Key|Xbox|One Left Trigger}}</nowiki></code> {{Key|Xbox|One Left Trigger}} <code><nowiki>{{Key|Xbox|One Right Trigger}}</nowiki></code> {{Key|Xbox|One Right Trigger}} ==== Diagram ==== <code><nowiki>{{Key|Xbox|One Controller Diagram}}</nowiki></code> {{Key|Xbox|One Controller Diagram}} __NOTOC__ <noinclude>[[Category:Key template documentation]]</noinclude> adce81e2e9eafcf930052a8993d3e5625665202e Template:License 10 131 132 2025-03-25T22:49:36Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/{{{1|nolicense}}}|source={{{source|}}}}}</includeonly><noinclude>{{documentation}}</noinclude> 4b84fc940507f8fccb9c60b7f70b5a800a62fe59 133 132 2025-03-25T22:49:37Z Mr Pie 5 2833 Protected "[[Template:License]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/{{{1|nolicense}}}|source={{{source|}}}}}</includeonly><noinclude>{{documentation}}</noinclude> 4b84fc940507f8fccb9c60b7f70b5a800a62fe59 Template:License/CC-BY 10 132 134 2025-03-25T22:49:37Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY | icon = [[File:CC-BY.svg|x50px|link=https://creativecommons.org/licenses/by/3.0/|CC-BY]] | text = This file is under the [https://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 49f4317b802ef04c92f4edc474581035768c252e 135 134 2025-03-25T22:49:38Z Mr Pie 5 2833 Protected "[[Template:License/CC-BY]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY | icon = [[File:CC-BY.svg|x50px|link=https://creativecommons.org/licenses/by/3.0/|CC-BY]] | text = This file is under the [https://creativecommons.org/licenses/by/3.0/ Creative Commons Attribution 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 49f4317b802ef04c92f4edc474581035768c252e Template:License/CC-BY-NC 10 133 136 2025-03-25T22:49:38Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-NC | icon = [[File:CC-BY-NC.svg|x50px|link=https://creativecommons.org/licenses/by-nc/3.0/|CC-BY-NC]] | text = This file is under the [https://creativecommons.org/licenses/by-nc/3.0/ Creative Commons Attribution-NonCommercial 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-NC}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 535d8d725e53a0e8f94922ed597baed1353cec21 137 136 2025-03-25T22:49:39Z Mr Pie 5 2833 Protected "[[Template:License/CC-BY-NC]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-NC | icon = [[File:CC-BY-NC.svg|x50px|link=https://creativecommons.org/licenses/by-nc/3.0/|CC-BY-NC]] | text = This file is under the [https://creativecommons.org/licenses/by-nc/3.0/ Creative Commons Attribution-NonCommercial 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-NC}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 535d8d725e53a0e8f94922ed597baed1353cec21 Template:License/CC-BY-NC-ND 10 134 138 2025-03-25T22:49:40Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-NC-ND | icon = [[File:CC-BY-NC-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nc-nd/3.0/|CC-BY-NC-ND]] | text = This file is under the [https://creativecommons.org/licenses/by-nc-nd/3.0/ Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-NC-ND}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 4ed8a6372d14a167dd9d26f1ae865b1593b76604 139 138 2025-03-25T22:49:40Z Mr Pie 5 2833 Protected "[[Template:License/CC-BY-NC-ND]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-NC-ND | icon = [[File:CC-BY-NC-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nc-nd/3.0/|CC-BY-NC-ND]] | text = This file is under the [https://creativecommons.org/licenses/by-nc-nd/3.0/ Creative Commons Attribution-NonCommercial-NoDerivs 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-NC-ND}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 4ed8a6372d14a167dd9d26f1ae865b1593b76604 Template:License/CC-BY-NC-SA 10 135 140 2025-03-25T22:49:41Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-NC-SA | icon = [[File:CC-BY-NC-SA.svg|x50px|link=https://creativecommons.org/licenses/by-nc-sa/3.0/|CC-BY-NC-SA]] | text = This file is under the [https://creativecommons.org/licenses/by-nc-sa/3.0/ Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-NC-SA}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 385fc8e61d98dd5ed6d4fa25b0eacf17cbca1218 141 140 2025-03-25T22:49:42Z Mr Pie 5 2833 Protected "[[Template:License/CC-BY-NC-SA]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-NC-SA | icon = [[File:CC-BY-NC-SA.svg|x50px|link=https://creativecommons.org/licenses/by-nc-sa/3.0/|CC-BY-NC-SA]] | text = This file is under the [https://creativecommons.org/licenses/by-nc-sa/3.0/ Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-NC-SA}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 385fc8e61d98dd5ed6d4fa25b0eacf17cbca1218 Template:License/CC-BY-ND 10 136 142 2025-03-25T22:49:42Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-ND | icon = [[File:CC-BY-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nd/3.0/|CC-BY-ND]] | text = This file is under the [https://creativecommons.org/licenses/by-nd/3.0/ Creative Commons Attribution-NoDerivs 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-ND}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> c77af748cb3aab2fce9bfd947149cb3e1ef0a3f0 143 142 2025-03-25T22:49:43Z Mr Pie 5 2833 Protected "[[Template:License/CC-BY-ND]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-ND | icon = [[File:CC-BY-ND.svg|x50px|link=https://creativecommons.org/licenses/by-nd/3.0/|CC-BY-ND]] | text = This file is under the [https://creativecommons.org/licenses/by-nd/3.0/ Creative Commons Attribution-NoDerivs 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-ND}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> c77af748cb3aab2fce9bfd947149cb3e1ef0a3f0 Template:License/CC-BY-SA 10 137 144 2025-03-25T22:49:44Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-SA | icon = [[File:CC-BY-SA.svg|x50px|link=https://creativecommons.org/licenses/by-sa/3.0/|CC-BY-SA]] | text = This file is under the [https://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-SA}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 1e471ba76ef084e99bff87e9356d439d400f73de 145 144 2025-03-25T22:49:45Z Mr Pie 5 2833 Protected "[[Template:License/CC-BY-SA]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-BY-SA | icon = [[File:CC-BY-SA.svg|x50px|link=https://creativecommons.org/licenses/by-sa/3.0/|CC-BY-SA]] | text = This file is under the [https://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-ShareAlike 3.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC-BY-SA}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 1e471ba76ef084e99bff87e9356d439d400f73de Template:License/CC-PD 10 138 146 2025-03-25T22:49:45Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-PD | icon = [[File:CC-PD.svg|x50px|link=|Public Domain]] | text = This file has been released into the public domain by the copyright holder, its copyright has expired, or it is ineligible for copyright. This applies worldwide. }}</includeonly><noinclude> This template currently looks like: {{License/CC-PD}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 23b76ae521833f5a34f0bf73426a53aad8fa9923 147 146 2025-03-25T22:49:46Z Mr Pie 5 2833 Protected "[[Template:License/CC-PD]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-PD | icon = [[File:CC-PD.svg|x50px|link=|Public Domain]] | text = This file has been released into the public domain by the copyright holder, its copyright has expired, or it is ineligible for copyright. This applies worldwide. }}</includeonly><noinclude> This template currently looks like: {{License/CC-PD}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 23b76ae521833f5a34f0bf73426a53aad8fa9923 Template:License/CC-SRR 10 139 148 2025-03-25T22:49:47Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-SRR | icon = [[File:CC-SRR.svg|link=|CC-Some Rights Reserved]] | text = This file is under the Creative Commons Some Rights Reserved License. }}</includeonly><noinclude> This template currently looks like: {{License/CC-SRR}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 1ce36d04e501144e6a089ff194fee2b82732e85a 149 148 2025-03-25T22:49:47Z Mr Pie 5 2833 Protected "[[Template:License/CC-SRR]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC-SRR | icon = [[File:CC-SRR.svg|link=|CC-Some Rights Reserved]] | text = This file is under the Creative Commons Some Rights Reserved License. }}</includeonly><noinclude> This template currently looks like: {{License/CC-SRR}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 1ce36d04e501144e6a089ff194fee2b82732e85a Template:License/CC0 10 140 150 2025-03-25T22:49:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC0 | icon = [[File:CC-0.svg|x50px|link=https://creativecommons.org/publicdomain/zero/1.0/|CC0]] | text = This file is under the [https://creativecommons.org/publicdomain/zero/1.0/ CC0 1.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC0}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> a6ae218b1382bcbe6f0e6e98ef272e4355dd7205 Template:License/CC0 10 140 151 150 2025-03-25T22:49:48Z Mr Pie 5 2833 Protected "[[Template:License/CC0]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = CC0 | icon = [[File:CC-0.svg|x50px|link=https://creativecommons.org/publicdomain/zero/1.0/|CC0]] | text = This file is under the [https://creativecommons.org/publicdomain/zero/1.0/ CC0 1.0 License]. }}</includeonly><noinclude> This template currently looks like: {{License/CC0}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> a6ae218b1382bcbe6f0e6e98ef272e4355dd7205 Template:License/Fairuse 10 141 152 2025-03-25T22:49:49Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:License/fairuse]] ecb7db41961bb5256d571593ca3f90ae1e199a3e Template:License/doc 10 142 153 2025-03-25T22:49:50Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template is to be used under a ''Licensing'' heading on file pages to denote the file's license. == Available licenses == === Game === * Usage: <nowiki>{{License|game}}</nowiki> {{License|game}} === Fairuse === * Usage: <nowiki>{{License|fairuse}}</nowiki> {{License|fairuse}} === CC0 === * Usage: <nowiki>{{License|CC0}}</nowiki> {{License|CC0}} === CC-BY-NC-ND === * Usage: <nowiki>{{License|CC-BY-NC-ND}}</nowiki> {{License|CC-BY-NC-ND}} === CC-BY-NC-SA === * Usage: <nowiki>{{License|CC-BY-NC-SA}}</nowiki> {{License|CC-BY-NC-SA}} === CC-BY-NC === * Usage: <nowiki>{{License|CC-BY-NC}}</nowiki> {{License|CC-BY-NC}} === CC-BY-ND === * Usage: <nowiki>{{License|CC-BY-ND}}</nowiki> {{License|CC-BY-ND}} === CC-BY-SA === * Usage: <nowiki>{{License|CC-BY-SA}}</nowiki> {{License|CC-BY-SA}} === CC-BY === * Usage: <nowiki>{{License|CC-BY}}</nowiki> {{License|CC-BY}} === CC-PD === * Usage: <nowiki>{{License|CC-PD}}</nowiki> {{License|CC-PD}} === CC-SRR === * Usage: <nowiki>{{License|CC-SRR}}</nowiki> {{License|CC-SRR}} === Permission === * Usage: <nowiki>{{License|permission}}</nowiki> {{License|permission}} === No license === '''Providing no parameter (or invalid one) defaults to the nolicense notice:''' <nowiki>{{License}}</nowiki>{{License}} == Specifying source == '''Source parameter (optional):''' The source parameter accepts a url to the source where the file came from if necessary for attribution. Example: <nowiki>{{License|game|source=https://indie.io/}}</nowiki> {{License|game|source=https://indie.io/}} <includeonly> [[Category:License templates]] </includeonly> <noinclude>[[Category:Template documentation]]</noinclude> 5b334ee591fa6a0867f5d8e685e580b5b6c21334 Template:License/fairuse 10 143 154 2025-03-25T22:49:51Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = fairuse | darkIcon = yes | icon = [[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]] | text = This file is copyrighted. It will be used in a way that qualifies as fair use under [https://en.wikipedia.org/wiki/Fair_use#Fair_use_under_United_States_law US copyright law]. }}</includeonly><noinclude> This template currently looks like: {{License/fairuse}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 3662b685c4d9fa43d4f9342fae34b2f43ba925ef 155 154 2025-03-25T22:49:51Z Mr Pie 5 2833 Protected "[[Template:License/fairuse]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = fairuse | darkIcon = yes | icon = [[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]] | text = This file is copyrighted. It will be used in a way that qualifies as fair use under [https://en.wikipedia.org/wiki/Fair_use#Fair_use_under_United_States_law US copyright law]. }}</includeonly><noinclude> This template currently looks like: {{License/fairuse}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 3662b685c4d9fa43d4f9342fae34b2f43ba925ef Template:License/game 10 144 156 2025-03-25T22:49:52Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:rightsholder|<!-- *************************************** *************************************** Step 1/2 [required] Enter the name of the rightsholder, optionally with a link. Example without link: indie.io Example with a URL: [https://www.indie.io/ indie.io] Edit on the line below this************--> <!--Edit on the line above this******** *************************************** *************************************** -->}}<!-- continue to step 2 *************************************** *************************************** Step 2/2 [optional] Enter the TOS link. Example link: https://www.indie.io/terms-of-service -->{{#vardefine:tos|<!-- Edit on the line below this************--> <!--Edit on the line above this******** *************************************** *************************************** -->}}<!-- DON'T EDIT ANYTHING BELOW THIS -->{{License/template | source = {{{source|}}} | type = developer | darkIcon = yes | icon = [[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]] | text = {{#if:{{#var:rightsholder}}| <!-- Specific: -->This file is owned by {{#var:rightsholder}} and/or its licensors{{#if:{{#var:tos}}|, and is licensed under the {{#var:rightsholder}} [{{#var:tos}} Terms of Use]}}.<br/>All trademarks and registered trademarks present in the file are proprietary to {{#var:rightsholder}} and/or its licensors. | <!-- Generic: -->This file is owned by the applicable game studio and/or its licensors. }} }}</includeonly><noinclude> This template currently looks like: {{License/game}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> f1283ce43eda0d523b8e1f249ebc02470d957b34 157 156 2025-03-25T22:49:53Z Mr Pie 5 2833 Protected "[[Template:License/game]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:rightsholder|<!-- *************************************** *************************************** Step 1/2 [required] Enter the name of the rightsholder, optionally with a link. Example without link: indie.io Example with a URL: [https://www.indie.io/ indie.io] Edit on the line below this************--> <!--Edit on the line above this******** *************************************** *************************************** -->}}<!-- continue to step 2 *************************************** *************************************** Step 2/2 [optional] Enter the TOS link. Example link: https://www.indie.io/terms-of-service -->{{#vardefine:tos|<!-- Edit on the line below this************--> <!--Edit on the line above this******** *************************************** *************************************** -->}}<!-- DON'T EDIT ANYTHING BELOW THIS -->{{License/template | source = {{{source|}}} | type = developer | darkIcon = yes | icon = [[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]] | text = {{#if:{{#var:rightsholder}}| <!-- Specific: -->This file is owned by {{#var:rightsholder}} and/or its licensors{{#if:{{#var:tos}}|, and is licensed under the {{#var:rightsholder}} [{{#var:tos}} Terms of Use]}}.<br/>All trademarks and registered trademarks present in the file are proprietary to {{#var:rightsholder}} and/or its licensors. | <!-- Generic: -->This file is owned by the applicable game studio and/or its licensors. }} }}</includeonly><noinclude> This template currently looks like: {{License/game}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> f1283ce43eda0d523b8e1f249ebc02470d957b34 Template:License/indie.io 10 145 158 2025-03-25T22:49:53Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = developer | darkIcon = yes | icon = [[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]] | text = This file is owned by [https://indie.io indie.io] and/or its licensors, and is licensed under the [https://indie.io indie.io] [https://www.indie.io/terms-of-service Terms of Use].<br/> All trademarks and registered trademarks present in the file are proprietary to [https://indie.io indie.io] and/or its licensors. }}</includeonly><noinclude> This template currently looks like: {{License/indie.io}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 49823bdf8d378ff755fa7b6493afde40f6a4e19a 159 158 2025-03-25T22:49:54Z Mr Pie 5 2833 Protected "[[Template:License/indie.io]]" ([Edit=Allow only wiki.gg staff] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = developer | darkIcon = yes | icon = [[File:IN COPYRIGHT.svg|50px|link=https://rightsstatements.org/page/InC/1.0/?language=en|IN COPYRIGHT]] | text = This file is owned by [https://indie.io indie.io] and/or its licensors, and is licensed under the [https://indie.io indie.io] [https://www.indie.io/terms-of-service Terms of Use].<br/> All trademarks and registered trademarks present in the file are proprietary to [https://indie.io indie.io] and/or its licensors. }}</includeonly><noinclude> This template currently looks like: {{License/indie.io}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 49823bdf8d378ff755fa7b6493afde40f6a4e19a Template:License/nolicense 10 146 160 2025-03-25T22:49:55Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = nolicense | icon = [[File:Warning-red.svg|50px|link=|No license has been selected.]] | text = Please select the proper license for this file by adding the proper parameter to <nowiki>{{License}}</nowiki>. See [[Template:License]] for details. }}</includeonly><noinclude> This template currently looks like: {{License/nolicense}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 9ddcfb97af577d7f8454e20f985b9456e7a95c77 161 160 2025-03-25T22:49:55Z Mr Pie 5 2833 Protected "[[Template:License/nolicense]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = nolicense | icon = [[File:Warning-red.svg|50px|link=|No license has been selected.]] | text = Please select the proper license for this file by adding the proper parameter to <nowiki>{{License}}</nowiki>. See [[Template:License]] for details. }}</includeonly><noinclude> This template currently looks like: {{License/nolicense}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 9ddcfb97af577d7f8454e20f985b9456e7a95c77 Template:License/permission 10 147 162 2025-03-25T22:49:56Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = permission | icon = [[File:IN COPYRIGHT.svg|50px|link=|IN COPYRIGHT WITH PERMISSION]] | text = This file is copyrighted. The copyright holder has given permission for its use on wiki.gg. }}</includeonly><noinclude> This template currently looks like: {{License/permission}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 854af75c8477c36c50cb5d103ad8a933892fc322 163 162 2025-03-25T22:49:56Z Mr Pie 5 2833 Protected "[[Template:License/permission]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly>{{License/template | source = {{{source|}}} | type = permission | icon = [[File:IN COPYRIGHT.svg|50px|link=|IN COPYRIGHT WITH PERMISSION]] | text = This file is copyrighted. The copyright holder has given permission for its use on wiki.gg. }}</includeonly><noinclude> This template currently looks like: {{License/permission}} See {{tl|License}} for full license documentation [[Category:License templates]]</noinclude> 854af75c8477c36c50cb5d103ad8a933892fc322 Template:License/template 10 148 164 2025-03-25T22:49:57Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- --><div class="license {{{type|}}}" style="border: 1px solid var(--wiki-content-border-color); background: var(--wiki-content-background-color--secondary); align-items: center; padding: 5px; display: flex; gap: 1em;"> <div class="icon {{#if:{{{darkIcon|}}}|invert-on-dark}}">{{{icon|}}}</div> <div class="text">{{{text|}}}{{#if:{{{source|}}}|<br/><span class="source">Source:&nbsp;{{{source|}}}</span>}}{{{text2|}}}</div> </div><!-- --></includeonly><noinclude>{{documentation|Template:License/doc}}</noinclude> 7d0e694e6a42a5368b4b62ce6c01bfa2fb4e67b8 165 164 2025-03-25T22:49:58Z Mr Pie 5 2833 Protected "[[Template:License/template]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <includeonly><!-- --><div class="license {{{type|}}}" style="border: 1px solid var(--wiki-content-border-color); background: var(--wiki-content-background-color--secondary); align-items: center; padding: 5px; display: flex; gap: 1em;"> <div class="icon {{#if:{{{darkIcon|}}}|invert-on-dark}}">{{{icon|}}}</div> <div class="text">{{{text|}}}{{#if:{{{source|}}}|<br/><span class="source">Source:&nbsp;{{{source|}}}</span>}}{{{text2|}}}</div> </div><!-- --></includeonly><noinclude>{{documentation|Template:License/doc}}</noinclude> 7d0e694e6a42a5368b4b62ce6c01bfa2fb4e67b8 Template:Link icon 10 149 166 2025-03-25T22:49:58Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#vardefine:target|{{{1|}}}<!-- end vd -->}}<!-- -->{{#vardefine:display|{{#if:{{{2|}}}|{{{2}}}|{{{1}}}<!-- end if -->}}<!-- end vd -->}}<!-- -->{{#vardefine:iconSize|1.2em}}<!-- -->{{#vardefine:lineHeight|1lh}}<!-- -->{{#vardefine:fileExists|{{filepath:{{#var:target}} ({{{type}}}).png}}}}<!-- -->{{#ifeq: {{{2|}}} | notext <!-- start if notext -->|<span class="link-icon notext" style="--link-icon-size: {{#var:iconSize}}; --link-icon-line-height: {{#var:lineHeight}};"><!-- start notext icon element -->{{#if: {{#var:fileExists}} <!-- start icon if -->| <span class="regular">[[File:{{#var:target}} ({{{type}}}).png|link={{#var:target}}|alt=]]</span><!-- end regular icon -->| <span class="fallback">[[File:{{{1}}} ({{{type}}}).png|?]]</span><!-- end fallback icon (?) -->}}<!-- end icon if --></span><!-- end notext icon -->|<span class="link-icon" style="--link-icon-size: {{#var:iconSize}}; --link-icon-line-height: {{#var:lineHeight}};"><!-- start icon + text element -->{{#if: {{#var:fileExists}} <!-- start icon if -->| <span class="regular">[[File:{{#var:target}} ({{{type}}}).png|link={{#var:target}}|alt=]]</span><!-- end regular icon -->| <span class="fallback">[[File:{{{1}}} ({{{type}}}).png|?]]</span><!-- end fallback icon (?) -->}}&nbsp;<!-- end icon if --><span class="display-text">[[{{#var:target}}|{{#var:display}}]]</span><!-- end display text -->}}<!-- start if notext --></span></includeonly><noinclude>{{Documentation}}[[Category:Formatting templates]]</noinclude> 4e9bb37a48d63bb6b56f32d260dc74f64011e4af Template:Link icon/doc 10 150 167 2025-03-25T22:49:59Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{No direct use}} == List of link icon templates == * {{tl|Character icon}} * {{tl|Item icon}} == Dependencies== For this template to work properly, you need the following: * The <code>.link-icon</code> class and any related classes, found in [[MediaWiki:Common.css]]. <noinclude>[[Category:Template documentation]]</noinclude> 654dfb540ea31a810ef53c3820862942e63b2e8a Template:Luadoc 10 151 168 2025-03-25T22:50:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <noinclude>[[Category:Documentation templates]]</noinclude>{{#ifeq:{{int:scribunto-doc-page-name|{{ROOTPAGENAME}}}}|{{FULLPAGENAME}}||<div class="luadoc">Edit the [[{{int:scribunto-doc-page-name|{{ROOTPAGENAME}}}}|documentation or categories]] for this module. {{#ifexist:{{FULLPAGENAME}}/i18n|This module has an [[/i18n|i18n file]].}}</div>}} 37de49949dfa0f16975ff4e9850b4573ec388cb6 Template:MP link 10 152 169 2025-03-25T22:50:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- Variables -->{{#vardefine:link|{{{link|{{{1|}}}}}}}}<!-- Image-->{{#if:{{{image|}}}|[[File:{{#replace:{{{image|}}}|File:}}|{{{size|42px}}}|link={{#var:link}}{{#if:{{{altText|}}}|{{!}}alt={{{altText|}}}}}|class={{{imageClass|}}}]]}}<!-- Link below the image -->{{#if:{{{1|}}}|<!-- If it's an external link, use external link syntax -->{{#if:{{#pos:{{{link|}}}|http}}|[{{{link|}}} {{{1|}}}]|<!-- Otherwise use normal syntax the ifeq, pos, sub combo is filtering out a leading :, so that we can add our own without doubling up, allowing easy category linking -->[[:{{#ifeq:{{#pos:{{#var:link}}|:}}|0|{{#sub:{{#var:link}}|1}}|{{#var:link}}}}|{{{1|}}}]]}} }}</includeonly><noinclude> {{doc}} [[Category:Main page templates]] </noinclude> be5325327a3e6c626069e9f98a5dd2b9f283042c Template:MP link/doc 10 153 170 2025-03-25T22:50:03Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This creates one of the stylized and formatted links on the [[{{MediaWiki:Mainpage}}|main page]]. == Usage == Groups of this template should be wrapped inside of <code><nowiki><div class="mp-links"></div></nowiki></code> and each entry should be a separate line in an [[wikipedia:Help:Lists#Basically|unordered list]]. This div can be given one of the classes <code>columns-x</code> where x is a number from 1 to 7, and the links will line up in that many columns if space permits (default is 3). The div can also optionally be given the class <code>stretch</code> and it will stretch the list vertically to fill empty space. See [[Mediawiki:Common.css]] for the full definitions of these classes and styling for this template. ===Parameters=== <templatedata> { "description": { "en": "Creates stylized and formatted links on the main page." }, "format": "inline", "params": { "1": { "label": { "en": "Text" }, "description": { "en": "The text to display. If the link parameter is not given, this will also be the link target." }, "example": "Stuff", "type": "string", "suggested": true }, "link": { "label": { "en": "Link" }, "description": { "en": "The target page for the link, if different than the display text." }, "required": false, "example": "Main Page", "type": "wiki-page-name" }, "image": { "label": { "en": "Image" }, "description": { "en": "An image to display with the link." }, "required": false, "suggested": true, "type": "wiki-file-name" }, "size": { "label": { "en": "Image size" }, "description": { "en": "The size of the image, in px." }, "required": false, "default": "42px", "type": "string" }, "imageClass": { "label": "Image class", "description": "A class to give directly to the image", "example": "invert-on-dark", "type": "string", "suggestedvalues": [ "invert-on-dark", "invert-on-light" ] }, "altText": { "label": "Alt text", "description": "Alt text to describe the image", "example": "Wiki logo", "type": "string", "suggested": true } }, "paramOrder": [ "1", "link", "image", "size", "imageClass", "altText" ] } </templatedata> ==Examples== <pre> <div class="mp-links columns-3"> * {{MP link|Stuff|link=Special:Random|image=Site-logo.png|size=42px}} * {{MP link|Things|link=Special:Random}} * {{MP link|Other stuff|link=Special:Random|image=Site-logo.png|size=42px}} </div> </pre> Produces: <div class="mp-links columns-3"> * {{MP link|Stuff|link=Special:Random|image=Site-logo.png|size=42px}} * {{MP link|Things|link=Special:Random}} * {{MP link|Other stuff|link=Special:Random|image=Site-logo.png|size=42px}} </div> <noinclude> [[Category:Template documentation]] </noinclude> aabad7f43ba29d72dbebc5a849f202294e406735 Template:Main 10 154 171 2025-03-25T22:50:04Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:text|<!-- start vd -->{{#if:{{{2|}}}<!-- if more than one page -->|[[{{{1}}}]]{{#if:{{{3|}}}<!-- start concat if -->|, [[{{{2}}}]] and [[{{{3}}}]]<!-- concat two -->|<nowiki> </nowiki>and [[{{{2}}}]]<!-- else; concat one -->}}<!-- end concat if -->|[[{{{1}}}]]<!-- else; one page only -->}}<!-- end if -->}}<!-- end vd -->{{Hatnote|<!-- -->{{#if:{{{2|}}}|Main articles|Main article}}: {{#var:text}}<!-- -->}}<!-- --></includeonly><!-- --><noinclude>{{doc}}[[Category:Hatnote templates]]</noinclude> e02ac04db1bbce6b71a9aa8a5064182f662d8470 Template:Main/doc 10 155 172 2025-03-25T22:50:05Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <templatedata> { "params": { "1": { "label": "Article", "description": "A main article.", "example": "Article", "type": "wiki-page-name", "required": true }, "2": { "label": "Second Article", "description": "A second main article.", "example": "Second Article", "type": "wiki-page-name" }, "3": { "label": "Third Article", "description": "A third main article.", "example": "Third Article", "type": "wiki-page-name" } }, "description": "This hatnote template is meant to be in sections of an article mentioning information about another existing main article.", "paramOrder": [ "1", "2", "3" ], "format": "inline" } </templatedata> == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{Main|Special:WantedPages}}</nowiki></code> || {{Main|Special:WantedPages}} |- | <code><nowiki>{{Main|Special:WantedPages#Section Title}}</nowiki></code> || {{Main|Special:WantedPages#Section Title}} |- | <code><nowiki>{{Main|Special:WantedPages|Special:UncategorizedPages}}</nowiki></code> || {{Main|Special:WantedPages|Special:UncategorizedPages}} |- | <code><nowiki>{{Main|Special:WantedPages|Special:UncategorizedPages|Special:UncategorizedCategories}}</nowiki></code> || {{Main|Special:WantedPages|Special:UncategorizedPages|Special:UncategorizedCategories}} |- | <code><nowiki>{{Main|Special:WantedPages{{!}}Page 1}}</nowiki></code> (Custom link label) || {{Main|Special:WantedPages{{!}}Page 1}} |} == Dependencies == This template requires the {{tl|Hatnote}} metatemplate. == Source == Roughly based on [[wikipedia:Template:For|Wikipedia's For Template]]. <noinclude>[[Category:Template documentation]]</noinclude> dd762adeece0f944821cb81ee14a8bd9cb539b22 Template:Main page 10 156 173 2025-03-25T22:50:06Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#invoke:Main page|main}} __NOTOC__ __NOEDITSECTION__ [[Category:{{SITENAME}}| ]]</includeonly><noinclude> {{doc}} [[Category:Main page templates]] </noinclude> 64a0dbb502a75c44e4b3f474772d8502bdf44e40 Template:Main page/doc 10 157 174 2025-03-25T22:50:07Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template is used to create an IMP Main Page. It uses [[Module:Main page]] to arrange a series of [[Template:Main page box]]es in a [https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_grid_layout CSS grid]. ==Simple explanation== The layout is made using keywords arranged in a grid. This grid has 3 columns on desktop-width screens, 2 columns on tablet, and 1 on mobile. Each can have as many rows as you want. Each keyword represents the same section and can span multiple rows and/or columns, but ''must'' form a contiguous rectangle of any dimension (1x1, 1x2, 2x2, 2x3, etc.). For example, the following input to desktop: <pre style="display:table;"> welcome welcome welcome about links links about contribute contribute </pre> would produce a grid resembling the following: {| class="wikitable" | style="background-color:rgba(0,255,0,0.15)" | welcome | style="background-color:rgba(0,255,0,0.15)" | welcome | style="background-color:rgba(0,255,0,0.15)" | welcome |- | style="background-color:rgba(255,0,255, 0.15)" | about | style="background-color:rgba(0,0,255, 0.15)" | links | style="background-color:rgba(0,0,255, 0.15)" | links |- | style="background-color:rgba(255,0,255, 0.15)" | about | style="background-color:rgba(255,255,0, 0.15)" | contribute | style="background-color:rgba(255,255,0, 0.15)" | contribute |} Where <code>welcome</code> is the contents of [[{{MediaWiki:Mainpage}}/welcome]], <code>about</code> is the contents of [[{{MediaWiki:Mainpage}}/about]], and so on. See [[Template:Main page box]] for more information about creating your own boxes. If you enter a keyword that does not have a corresponding box already, you'll be prompted to create one when saving or previewing the page. If you leave a keyword out of a certain layout, it will not be displayed on that layout. A warning will be given at the top of the edit preview in case this was an accident, but can be safely ignored if intentional. For additional hints and information, see the comments that came on your main page or ask a wiki.gg staff member for help. ==Technical explanation== For the CSS savvy, this section explains how it works a bit under the hood. The input to desktop, tablet, and mobile create [https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties CSS variables] which are then used as the value of [https://developer.mozilla.org/en-US/docs/Web/CSS/grid-template-areas grid-template-areas] in media queries for screen widths >=1350px, >=990px, and <990px. The boxes are given an id based on their subpage name, which is then used by the module to find the template, as well as by the box templates to assign them a CSS id of <code>mp-box-<keyword></code>. Since these keywords are used directly in the grid layout, they must follow the rules of [https://developer.mozilla.org/en-US/docs/Web/CSS/custom-ident <custom-ident>] naming. ==Dependencies== For this template to work properly, you need the following: * [[Module:Main page]] * All templates in [[:Category:Main page templates]]. * All CSS within the "Main page layout" section found in [[MediaWiki:Common.css]]. The <code>[[MediaWiki:Gadgets/mpEditLinks|mpEditLinks]]</code> gadget is also highly recommended. Its code can be found at [[MediaWiki:Gadgets/mpEditLinks/main.css]] and [[MediaWiki:Gadgets/mpEditLinks/main.js]]. ==TemplateData== <templatedata> { "params": { "desktop": { "label": "Desktop", "description": "The layout for wide screens", "required": true, "type": "string" }, "tablet": { "label": "Tablet", "description": "The layout for mid-width screens", "required": true, "type": "string" }, "mobile": { "label": "Mobile", "description": "The layout for narrow screens", "required": true, "type": "string" } }, "description": "Creates an IMP Main Page.", "format": "block" } </templatedata> <noinclude>[[Category:Template documentation]]</noinclude> c5052ca4c6f9f0e1e2c0a81cea00e372d4bacdca Template:Main page box 10 158 175 2025-03-25T22:50:08Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><code>Template:Main page box</code> is not intended to be used directly, please use [[Template:Main page box/start]] and [[Template:Main page box/end]].</includeonly><noinclude> This template is used to create the boxes of the IMProved Main Page (IMP) framework. '''It should not be called directly''', instead using {{tl|Main page box/start}} and {{tl|Main page box/end}}. <div style="text-align:center;"> Use the box below to create a page with the required templates already in place, ready for you to add your content. {{/create}} The box name can not contain spaces or start with a number. Those are probably the only restrictions you'll run into, but for a full list see [https://developer.mozilla.org/en-US/docs/Web/CSS/custom-ident <custom-ident> on MDN web docs]. </div> ==Parameters== These are the parameters used by {{tl|Main page box/start}}. All parameters are optional. {| class="wikitable" ! Name !! Data type !! Description |- | title || Wikitext || The title of the box. This can be empty, in which case the box will contain only the content. |- | class || CSS classes || A list of classes to be passed to the box, separated by spaces and without quotes. Standard options are <code>centered-content</code> to vertically center contents, and <code>has-floating-image</code> in case floating images are needed in the box (normally the flex layout disallows this). |- | style || CSS declarations || Inline CSS to be applied directly to the box, without quotes. A common usage is <code>text-align:center;</code> for cases where it's desired for individual boxes to have centered text. |} [[Category:Main page templates]] [[Category:Template documentation]] </noinclude> cbbd25d1eb0105a8be55d0cc174f385fc467ffad Template:Main page box/create 10 159 176 2025-03-25T22:50:09Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{#tag: inputbox | type = create width = 40 default = {{{1|}}} buttonlabel = Create this box prefix = {{#or:{{{rootpage|}}}|{{MediaWiki:Mainpage}}}}/ placeholder = box name (no spaces) preload = Template:Main page box/preload summary = Created using preload preloadparams[] = {{ucfirst:{{{1|Example}}}}} }}<noinclude>[[Category:Main page templates]]</noinclude> da58eca98a44a09e476c5b4a5cafde116b6cdac9 Template:Main page box/end 10 160 177 2025-03-25T22:50:10Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly></div> </div></includeonly><noinclude> {{doc}} [[Category:Main page templates]] </noinclude> 506617faba565eb65144b21c3ead8fe5c2010b55 Template:Main page box/end/doc 10 161 178 2025-03-25T22:50:11Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki See [[Template:Main page box]] for information on how to use this. <noinclude>[[Category:Template documentation]]</noinclude> e73182bed655118b10da971b634dc9c3bf3e3d39 Template:Main page box/missing 10 162 179 2025-03-25T22:50:12Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = {{{1}}} | style = text-align:center; | class = missing }} The {{{1}}} box does not exist. Check your spelling or create it here:<br/> {{Main page box/create|{{{1|}}}|rootpage = {{{rootpage|}}}}}<br/> See [[Template:Main page box]] for more information. {{Main page box/end}}<noinclude>[[Category:Main page templates]]</noinclude> 5cff88dacf33c912d4aa04c1541e684a5f3e79bb Template:Main page box/preload 10 163 180 2025-03-25T22:50:13Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = $1 }} Content goes here, between the start and end templates. Feel free to use wikitext, tables, templates, new lines, whatever. {{Main page box/end}}<includeonly><no<noinclude></noinclude>include>[[Category:Main page boxes]]</no<noinclude></noinclude>include></includeonly><!-- don't edit this line --><noinclude> [[Category:Main page templates]] </noinclude> 9b16288e15e3c8c9ede76b4dc76e538d2253cf23 Template:Main page box/start 10 164 181 2025-03-25T22:50:14Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><div class="mp-box <!-- These variables are used to determine if certain layouts should hide certain boxes. The variable is created in and passed from [[Module:Main page]], and is formatted as a pseudo bitmask to reduce variable usage An example of this variable would be "1,1,0," which would mean display on desktop and tablet but not on mobile -->{{#ifeq:{{#explode:{{#var:imp-variable-display-box}}|,|0}}|0|mp-hide-on-desktop}} <!-- -->{{#ifeq:{{#explode:{{#var:imp-variable-display-box}}|,|1}}|0|mp-hide-on-tablet}} <!-- -->{{#ifeq:{{#explode:{{#var:imp-variable-display-box}}|,|2}}|0|mp-hide-on-mobile}} <!-- -->{{{class|}}}" style="grid-area:{{#var:imp-variable-id}}; {{{style|}}}" id="mp-box-{{#var:imp-variable-id}}" data-box-id="{{#var:imp-variable-id}}"><!-- -->{{#if:{{{title|{{{1|}}}}}}| <h2> {{{title|{{{1|}}}}}} </h2> }}<div class="mp-body"></includeonly><noinclude> {{doc}} [[Category:Main page templates]] </noinclude> 62eedb503b63a36fc31a301f8ea6b15f6ff9bf60 Template:Main page box/start/doc 10 165 182 2025-03-25T22:50:15Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki See [[Template:Main page box]] for information on how to use this. ==TemplateData== <templatedata> { "params": { "class": { "label": "Class", "description": "Additional classes to give to the box wrapping this box.", "example": "centered-content", "suggestedvalues": [ "centered-content", "has-floating-image" ] }, "style": { "label": "Style", "description": "Inline CSS to add to the box wrapping this box", "example": "text-align:center;", "type": "string" }, "title": { "aliases": [ "1" ], "label": "Title", "description": "The title of this box.", "example": "Welcome to the wiki!", "type": "content", "suggested": true } }, "description": "Creates a box for use on the main page.", "paramOrder": [ "title", "class", "style" ], "format": "block" } </templatedata> <noinclude>[[Category:Template documentation]]</noinclude> 860e1be8fbf205ab2b3214cb91860a77fd3ef52b Template:Merge 10 166 183 2025-03-25T22:50:15Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = purple | icon = Merge.svg | message = It has been proposed that this page be [[support:Merge|merged]] with [[{{{1}}}]]. | tiny = {{{tiny|}}} | class = {{{class|}}} | date = {{{date|}}} }}<!-- -->{{#ifeq: {{lc:{{{nocat|}}}}} | yes ||[[Category:Candidates for merging]]}}</includeonly><!-- --><noinclude>{{Merge|Template:Merge|nocat=yes}} {{doc|Template:Ambox/doc}}</noinclude> 9975c110e793cc1943eac9ea8e62257d704ab853 Template:Merge/doc 10 167 184 2025-03-25T22:50:16Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Template:Ml 10 168 185 2025-03-25T22:50:17Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <code>{{[[Module:{{{1}}}|{{{1}}}]]}}<sup>m</sup>{{#if:{{{2|}}}|.{{{2}}}()}}</code><noinclude> * <code><nowiki>{{Ml|Infobox}}</nowiki></code> generates {{Ml|Infobox}}. * <code><nowiki>{{Ml|ArgsUtil|merge}}</nowiki></code> generates {{Ml|ArgsUtil|merge}}. [[Category:Formatting templates]] </noinclude> 0c69bf8d7c3319f1cf2aa68f4b80261257291560 Template:Move 10 169 186 2025-03-25T22:50:18Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = darkorange | icon = Move.svg | message = It has been proposed that this page be moved to [[{{{1}}}]]. | tiny = {{{tiny|}}} | class = {{{class|}}} | date = {{{date|}}} }}<!-- -->{{#ifeq: {{lc:{{{nocat|}}}}} | yes ||[[Category:Candidates for moving]]}}</includeonly><!-- --><noinclude>{{Move|Template:Ambox{{!}}Example|nocat=yes}} {{doc|Template:Ambox/doc}}</noinclude> dc4fd9090208e453457d6d2df193b9a7ee3b562d Template:Move/doc 10 170 187 2025-03-25T22:50:19Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Template:Navbox 10 171 188 2025-03-25T22:50:20Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#invoke:Navbox|main}}</includeonly><noinclude>[[Category:Navigation templates]] {{documentation}}</noinclude> 11355a4514de8aa6c0ae686240591d267101c58c Template:Navbox/doc 10 172 189 2025-03-25T22:50:21Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{no direct use}} {{UsesLua|Navbox}} This template is designed to set up navigational templates relatively quickly with one or more lists of links. We highly recommend using this template for standardizing navigational templates and ease of use, especially for mobile devices. See [[support:RANGER navboxes|the support wiki]] for more information, including installation steps and further examples. == Basic example == The following example demonstrates the core functionality of this template: the title text, one standard link group, and one link group that contains two sub-groups. The rows are striped for easier readability. {{Navbox | title = Items | striped = even | group1 = Consumables | list1 = * Health Potion * Mana Potion | group2 = Weapons | group2.1 = Swords | list2.1 = * Wooden Sword * Rusted Sword * Steel Sword | group2.2 = Bows | list2.2 = * Shortbow * Crossbow * Longbow }} <syntaxhighlight lang="wikitext" style="overflow: auto;"> {{Navbox | template = <template_title> <!-- Required. e.g. `|template=Items` for template:Items --> | title = Items | striped = even | group1 = Consumables | list1 = * Health Potion * Mana Potion | group2 = Weapons | group2.1 = Swords | list2.1 = * Wooden Sword * Rusted Sword * Steel Sword | group2.2 = Bows | list2.2 = * Shortbow * Crossbow * Longbow }} </syntaxhighlight> == Parameters == === Main === The following parameters modify the navbox as a whole. {| class="wikitable" ! Parameter ! Description |- ! <code>template</code><br><code>name</code> | ('''Required''') Title of the template that the edit icon links to. e.g. <code>Items</code> for template:Items. |- ! <code>title</code> | Text that appears at the top of the navbox. |- ! <code>state</code><br><code>collapsible</code> | Controls if a navbox should be expanded or collapsed when the page loads. This only affects the whole navbox; if [[#Sections|sections]] are used, they are treated differently. * <code>expanded</code> ('''default''') - the navbox will start open and readers can collapse it. * <code>collapsed</code> - the navbox will start closed and readers can expand it. * <code>off</code>, <code>no</code>, or <code>plain</code> - the navbox will start open and cannot be collapsed. Advanced users can modify this on a page-by-page basis; see [[support:RANGER navboxes#Controlling the collapsible|the support wiki]] for more information. |- ! <code>editlinks</code> | Controls if an edit icon should be displayed at the top-left of the navbox, making it easier for users to interact with the template itself. * unset ('''default''') - displays the edit icon * <code>off</code> or <code>no</code> - hides the edit icon |- ! <code>above</code> | Text that appears above all list groups, directly below the title. |- ! <code>below</code> | Text that appears below all list groups, at the bottom of the navbox. |- ! <code>striped</code><br><code>evenodd</code> | Controls if the navbox rows should have zebra striping on even or odd rows, making it easier for users to distinguish two rows apart from each other. If [[#Sections|sections]] are used, each section resets the even/odd counter. *unset ('''default''') - all rows have the same background *<code>y</code>, <code>yes</code>, <code>on</code>, <code>striped</code>, or <code>even</code> - even-numbered rows are highlighted *<code>swap</code> or <code>odd</code> - odd-numbered rows are highlighted |} === Sections === The following parameters define sections within the navbox with their own titles. {| class="wikitable" ! Parameter ! Description |- ! <code>header''n''</code> | Text that appears at the top of the section, where ''n'' is any positive integer. If the value is set to two or more <code>-</code> (e.g. <code>--</code>, <code>-----</code>, etc.) the new section will have no header bar and cannot be collapsed. All groups and lists that are ''n'' or higher will appear in this section unless there is a higher <code>header''n''</code> later in the template. For example, if a navbox defines <code>header1</code> and <code>header4</code>, the first section will include <code>list1</code>, <code>list2</code>, and <code>list3</code> (and any of their sub-lists), while the second section will include all remaining lists starting at <code>list4</code> and their sub-lists. |- ! <code>header_state</code><br><code>state''n''</code> | <code>header_state</code> controls if all sections, by default, should be expanded or collapsed when the page loads. <code>state''n''</code> overrides <code>header_state</code> for the specific section defined by <code>header''n''</code> (where ''n'' is a matching integer). * <code>expanded</code> ('''default''') - the section will start open and readers can collapse it. * <code>collapsed</code> - the section will start closed and readers can expand it. * <code>off</code> or <code>plain</code> - the section will start open and cannot be collapsed. Advanced users can modify these on a page-by-page basis; see [[support:RANGER navboxes#Controlling the collapsible|the support wiki]] for more information. Both parameters have no effect on sections with headers set to two or more <code>-</code>, which are always expanded and cannot be collapsed. |} === List groups === The following parameters define the list groups. {| class="wikitable" ! Parameter ! Description |- ! <code>group''n''</code> | Text label for a list, which appears on the left on desktop or at the top on mobile, where ''n'' is any positive integer. This parameter is optional; if a <code>list''n''</code> does not have a matching <code>group''n''</code>, the list will take the full width on desktop. |- ! <code>list''n''</code> | A wikitext list, where ''n'' is any positive integer. |- ! <code>group''n''.''x''</code><br><code>group''n''.''x''.''y''</code><br>etc. | Text label for sub-lists that appear under <code>group''n''</code>, <code>group''n''.''x''</code>, etc. |- ! <code>list''n''.''x''</code><br><code>list''n''.''x''.''y''</code><br>etc. | Wikitext sub-lists. |} === Styling === The following parameters add inline styling or your custom CSS classes to specific elements of the navbox. To assist with text alignment, three default classes are available: <code>align-left</code>, <code>align-center</code>, and <code>align-right</code>. {| class="wikitable" ! Parameter ! Description |- ! <code>navbox_style</code><br><code>navbox_class</code> | Modifies the parent navbox element; <code>class</code> can be used as a shorthand for <code>navbox_class</code> Two default classes are available: *<code>pill</code> changes the links to pill-styled rather than dot-separated *<code>pill-mobile</code> only changes the links to pill-styled on mobile devices |- ! <code>title_style</code><br><code>title_class</code> | Modifies the title bar |- ! <code>above_style</code><br><code>above_class</code> | Modifies the <code>above</code> text row |- ! <code>below_style</code><br><code>below_class</code> | Modifies the <code>below</code> text row |- ! <code>header_style</code><br><code>header_class</code> | Modifies all section headers (''not'' the title bar) |- ! <code>header''n''_style</code><br><code>header''n''_class</code> | Modifies the specific section header ''n'' |- ! <code>section''n''_style</code><br><code>section''n''_class</code> | Modifies the container holding the section defined by a matching <code>header''n''</code> |- ! <code>group_style</code><br><code>group_class</code> | Modifies all base groups (<code>group''n''</code>), but ''not'' any subgroups (<code>group''n''.''x''</code>, etc.) |- ! <code>subgroup_style</code><br><code>subgroup_class</code> | Modifies all subgroups at all levels (<code>group''n''.''x''</code>, <code>group''n''.''x''.''y''</code>, etc.) |- ! <code>group''A''_style</code><br><code>group''A''_class</code> | Modifies the specific group ''A'', where ''A'' is any ''n'', ''n''.''x'', ''n''.''x''.''y'', etc. |- ! <code>list_style</code><br><code>list_class</code> | Modifies all lists. Note, in this context, "list" refers to the container of a <code>list''n''</code> parameter, not a <code>ul</code> or <code>ol</code> element inside the parameter |- ! <code>list''A''_style</code><br><code>list''A''_class</code> | Modifies the specific list ''A'', where ''A'' is any ''n'', ''n''.''x'', ''n''.''x''.''y'', etc. |} <noinclude>[[Category:Template documentation]]</noinclude> e35c990efd00644e63b9735d72ff65818357a1fb Template:NoDirectUse 10 173 190 2025-03-25T22:50:22Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:No direct use]] 8448af1f61f0d64a84806b006c70670d9296acde Template:No direct use 10 174 191 2025-03-25T22:50:23Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{ambox|icon=Warning-red.svg|title='''Don't call this template directly from any content page!''' |message=This template is intended to be used inside of another template. Then that template in turn may be used on content pages. |color=red |tiny={{{tiny|}}} |class={{{class|}}} }}</includeonly><noinclude>{{doc|Template:Ambox/doc}} [[Category:Notice templates]]</noinclude> e0c3e967bce625ce28ec15908642c3382335ec1f Template:No direct use/doc 10 175 192 2025-03-25T22:50:24Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:Ambox/doc]] 68bfb03f8f28c95443c7b1997f252c236bf87256 Template:No wrap 10 176 193 2025-03-25T22:50:25Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:Nowrap]] 269180d5083536bbbf72d889477805cfde7aac9e Template:Normal 10 177 194 2025-03-25T22:50:26Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <span style{{=}}"font-weight:normal; font-style:normal">{{{1}}}</span><noinclude> {{documentation}} </noinclude> f1d74e033cde1ce3b2efdc98b78fb863b8524fcf Template:Nowrap 10 178 195 2025-03-25T22:50:27Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <span class="nowrap">{{{1}}}</span><noinclude> {{documentation}} </noinclude> 8817bafce418a08a72f3425283fc03d04a2d8d44 Template:Pipe 10 179 196 2025-03-25T22:50:28Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki &#124;<noinclude>{{documentation}}</noinclude> 9d1875aa686e4e25a0994448a39d057e91541788 Template:Pipe/doc 10 180 197 2025-03-25T22:50:29Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:((/doc]] 509bb731d447456a18489848c8a1ce38feddabcc Template:Quote 10 181 198 2025-03-25T22:50:29Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- --><div class="quote"><!-- start quote wrapper --><div class="marks-wrapper"><!-- start marks wrapper --><div class="block"><!-- start quote block -->{{#if:{{{title|}}}|<div class="title">{{{title}}}</div>|}}<!-- -->{{#if:{{{text|{{{1|}}}}}}|<div class="text">{{{text|{{{1|}}}}}}</div>|}}<!-- --></div><!-- end quote block --></div><!-- end marks wrapper -->{{#if:{{{author|{{{2|}}}}}}|<div class="author">― {{#if:{{{authorpage|}}}| [[{{{authorpage}}}|{{{author|{{{2|}}}}}}]] | {{{author|{{{2|}}}}}} }}</div>|}}<!-- --></div><!-- -->[[Category:Pages with quotes]]</includeonly><noinclude>{{Documentation}}[[Category:Formatting templates]]</noinclude> 095258ceee92819a4e7b83c26fba3761bf9c41a9 Template:Quote/doc 10 182 199 2025-03-25T22:50:31Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki == Examples == {| class="wikitable" ! Code !! Result |- | <pre>{{Quote|text=Now is the winter of our discontent made glorious summer by this sun of York}}</pre> | {{Quote|text=Now is the winter of our discontent made glorious summer by this sun of York}} |- | <pre>{{Quote |title=Opening lines of ''Richard III'' |text=Now is the winter of our discontent made glorious summer by this sun of York}}</pre> | {{Quote |title=Opening lines of ''Richard III'' |text=Now is the winter of our discontent made glorious summer by this sun of York}} |- | <pre>{{Quote |title=Opening lines of ''Richard III'' |author=William Shakespeare |text=Now is the winter of our discontent made glorious summer by this sun of York}}</pre> | {{Quote |title=Opening lines of ''Richard III'' |author=William Shakespeare |text=Now is the winter of our discontent made glorious summer by this sun of York}} |- | <pre>{{Quote |title=Opening lines of ''Richard III'' |author=William Shakespeare |authorpage=wikipedia:William Shakespeare |text=Now is the winter of our discontent made glorious summer by this sun of York}}</pre> | {{Quote |title=Opening lines of ''Richard III'' |author=William Shakespeare |authorpage=wikipedia:William Shakespeare |text=Now is the winter of our discontent made glorious summer by this sun of York}} |- | <pre>{{Quote |author=William Shakespeare |authorpage=wikipedia:William Shakespeare |text=Now is the winter of our discontent made glorious summer by this sun of York}}</pre> | {{Quote |author=William Shakespeare |authorpage=wikipedia:William Shakespeare |text=Now is the winter of our discontent made glorious summer by this sun of York}} |} == Dependencies == For this template to work properly, you need the following: * The <code>.quote</code> and any related classes, found in [[MediaWiki:Common.css]]. <noinclude>[[Category:Template documentation]]</noinclude> == Template data (for Visual Editor) == <templatedata> { "params": { "title": { "label": "Title", "description": "If the quote has a title, put it here.", "example": "Richard III's soliloquy", "type": "line" }, "text": { "label": "Quoted Text", "description": "The quoted text to be displayed.", "example": "Now is the winter of our discontent made glorious summer by this sun of York", "type": "string", "required": true }, "author": { "label": "Quote's Author", "description": "The author of the displayed quote.", "example": "William Shakespeare", "type": "line", "suggested": true }, "authorpage": { "label": "Author's Page", "description": "If the quote's author has a page on the Wiki, put the page name here.", "example": "William Shakespeare (playwright)", "type": "wiki-page-name", "suggested": true } }, "description": "This template creates a styled block element for quotes.", "paramOrder": [ "text", "author", "authorpage", "title" ], "format": "block" } </templatedata> 8a10e77de70ff704435282ce0f2ba792a13404a5 Template:Split 10 183 200 2025-03-25T22:50:32Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- -->{{#vardefine:pages|<!-- start vd -->{{#if:{{{2|}}}<!-- if more than one page -->|new pages titled [[{{{1}}}]]{{#if:{{{3|}}}<!-- start concat if -->|, [[{{{2}}}]] and [[{{{3}}}]]<!-- concat two -->|<nowiki> </nowiki>and [[{{{2}}}]]<!-- else; concat one -->}}<!-- end concat if -->|a new page titled [[{{{1}}}]]<!-- else; one page only -->}}<!-- end if -->}}<!-- end vd -->{{Ambox | color = purple | icon = Split.svg | message = It has been proposed that this page be split into {{#var:pages}}. | tiny = {{{tiny|}}} | class = {{{class|}}} | date = {{{date|}}} }}<!-- -->{{#ifeq: {{lc:{{{nocat|}}}}} | yes ||[[Category:Candidates for splitting]]}}</includeonly><!-- --><noinclude>{{Split|Template:Ambox{{!}}Example|nocat=yes}} {{Split|Template:Ambox{{!}}Example 1|Template:Ambox{{!}}Example 2|Template:Ambox{{!}}Example 3|nocat=yes}} {{doc|Template:Ambox/doc}}</noinclude> 73f5044c8b972e18c3b7880f94b0644e4a0e6ac7 Template:Split/doc 10 184 201 2025-03-25T22:50:33Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Template:Spoiler 10 185 202 2025-03-25T22:50:34Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly><!-- Base code written for Terraria Wiki: https://terraria.wiki.gg/wiki/Template:Spoiler NOTE: This template needs a JavaScript function in MediaWiki:Common.js or MediaWiki:Vector.js to work, as well as styling in MediaWiki:Common.css or MediaWiki:Vector.css for the related classes -->{{#vardefine:element|{{#if:{{{block|}}}|div|span}}}}<!-- --><{{#var:element}} class="spoiler-content {{{class|}}}" id="{{{id|}}}" style="{{{css|{{{style|}}}}}}"><{{#var:element}}>{{{1|}}}</{{#var:element}}></{{#var:element}}><!-- -->[[Category:Pages with spoilers]]<!-- --></includeonly><noinclude> {{doc}} [[Category:Formatting templates]] </noinclude> 8eb68f2e678d3b1eac0087662b8d5548dc29da29 Template:Spoiler/doc 10 186 203 2025-03-25T22:50:35Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This template is used to mark text and other elements as spoilers. Users can click or optionally hover to reveal their content. == The hoverShowSpoilers gadget == Users can enable the <code>[[MediaWiki:Gadgets/hoverShowSpoilers|hoverShowSpoilers]]</code> gadget to make spoilers show on hover, not just on click. The code for this gadget can be found at [[MediaWiki:Gadgets/hoverShowSpoilers/main.css]]. == Examples == {| class="wikitable" ! Code !! Result |- | <code><nowiki>{{spoiler|spoiler text}}</nowiki></code> (Click to toggle) || {{spoiler|spoiler text}} |- | <code><nowiki>{{spoiler|spoiler text with a [[Template:Navbox|link]]}}</nowiki></code> (Click to toggle) || {{spoiler|spoiler text with a [[Template:Navbox|link]]}} |- | <pre> {{spoiler|block=y|Really long spoiler that spans multiple lines It even has a bulleted list inside it: * Item a * Item b * [[Special:Random|Item c]] }}</pre> |{{spoiler|block=y|Really long spoiler that spans multiple lines It even has a bulleted list inside it: * Item a * Item b * [[Special:Random|Item c]] }} |} == Dependencies == For this template to work properly, you need the following: * The <code>spoilers</code> gadget with JavaScript code for toggling the <code>.spoiler</code> class on/off on click: ** [[MediaWiki:Gadgets/spoilers]] ** [[MediaWiki:Gadgets/spoilers/main.js]] * The <code>.spoiler-content</code> and any related classes, found in [[MediaWiki:Common.css]]. == Source == Base code adapted from [[wgg:terraria:Template:Spoiler|Template:Spoiler on Terraria Wiki]]. ==TemplateData== <templatedata> { "params": { "1": { "aliases": [ "text" ], "label": "Text", "description": "The text to be shown.", "example": "Character A died during the battle.", "type": "content", "required": true }, "hover": { "label": "Show on Hover?", "description": "Show spoiler text on mouse hover.", "example": "hover=yes", "type": "boolean", "default": "hover=no" }, "block": { "label": "Display as block?", "description": "If given, display the spoiler as a block instead of inline. Useful for long spoilers spanning multiple lines or using block-level elements like lists.", "example": "y", "type": "boolean", "suggested": true }, "class": { "label": "Class", "description": "A class or classes to apply to the spoiler", "type": "string" }, "id": { "label": "ID", "description": "A CSS ID to apply to the spoiler.", "type": "string" }, "style": { "description": "Inline CSS styles to pass in.", "type": "string", "aliases": [ "css" ], "label": "Style" } }, "description": "This template can be used to mark text as a spoiler.", "maps": { "1": {} }, "paramOrder": [ "1", "hover", "block", "class", "id", "style" ], "format": "inline" } </templatedata> <noinclude>[[Category:Template documentation]]</noinclude> bae231a84e57129ec12ba47e554ed42e76c185e0 Template:Spoiler warning 10 187 204 2025-03-25T22:50:36Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Ambox | color = red | icon = Warning-red.svg | title = Spoiler Warning | message = This page contains '''spoilers'''. View at your own discretion. | tiny = {{{tiny|}}} | class = {{{class|}}} }}<noinclude>{{doc|Template:Ambox/doc}}</noinclude> d46344bae30adce89ead1cf12e8c3ff904e95203 Template:Spoiler warning/doc 10 188 205 2025-03-25T22:50:37Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Template:Stub 10 189 206 2025-03-25T22:50:38Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = gold | icon = Stub.svg | message = This page is a [[support:Stub|stub]]. You can help '''{{SITENAME}}''' by [{{fullurl:{{FULLPAGENAME}}|action=edit}} expanding it]. | tiny = {{{tiny|}}} | class = {{{class|}}} | date = {{{date|}}} }}<!-- -->{{#ifeq: {{lc:{{{nocat|}}}}} | yes ||[[Category:Stubs]]}}</includeonly><!-- --><noinclude>{{Stub|nocat=yes}} {{doc|Template:Ambox/doc}}</noinclude> 1effeb7d6eb04a0b11c76b8bfa871703461c9344 Template:Stub/doc 10 190 207 2025-03-25T22:50:39Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:Ambox/doc]] 68bfb03f8f28c95443c7b1997f252c236bf87256 Template:Tl 10 191 208 2025-03-25T22:50:39Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{#invoke:Template link|main|code=on}}</includeonly><noinclude> {{Documentation}} </noinclude> 1c13b1daaf7b7e8ce1e45cc03b4baf31c09bc6cd Template:Tl/doc 10 192 209 2025-03-25T22:50:40Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{From Wikipedia|Module:Template link general,Template:Tlx}} {{Uses Lua|Template link}} This template returns an exemplaric use of a template while linking to the template description page, if the template exists. == Usage == <pre> {{tl|<Template name>}} {{tl|<Template name>|<Template parameters>}} </pre> ; ''unnamed parameter'' 1 : Template name (without <code>Template:</code> prefix) ; ''unnamed parameter'' 2 - 9 : Optional. Template parameters ; nl : Optional flag to display an un-linked template usage. == Examples == : <code><nowiki>{{tl|stub}}</nowiki></code> returns {{tl|stub}} : <code><nowiki>{{tl|stub|1}}</nowiki></code> returns {{tl|stub|1}} : <code><nowiki>{{tl|stub|1|2|nl{{=}}y}}</nowiki></code> returns {{tl|stub|1|2|nl{{=}}y}} : <code><nowiki>{{tl|for|page|t1{{=}}alt text}}</nowiki></code> returns {{tl|for|page|t1{{=}}alt text}} == See also == <includeonly> [[Category:Formatting templates]] </includeonly><noinclude>[[Category:Template documentation]]</noinclude> 7cb4f0fa749ef8a18a48c4b5816357a225f4acee Template:Tlx 10 193 210 2025-03-25T22:50:41Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Template:Tl]] af3906f239c45d791753d3170c656eddd6d1af5f Template:UsesLua 10 194 211 2025-03-25T22:50:42Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Uses Lua]] 9675a92267565619bc6418ec4e88163985302408 Template:Uses Lua 10 195 212 2025-03-25T22:50:43Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <includeonly>{{Ambox | color = darkblue | icon = Lua logo.svg | title= This template uses one or more modules written in the Lua programming language. | message = For more information, see [[wikipedia:Wikipedia:Lua|Wikipedia:Lua]] or the [[mw:Extension:Scribunto/Lua reference manual|Lua reference manual on mediawiki.org]]. Modules used include: {{#if:{{{1|}}}|{{#arraymap:{{{1|}}}|,|%s|'''[[Module:%s|%s]]'''}}|''None provided''}}. | tiny = {{{tiny|}}} | class = {{{class|}}} }}</includeonly><noinclude>{{doc|Template:Ambox/doc}}</noinclude> 1930c9b36136a5562cfaf7584f811d62b114a58a Template:Uses Lua/doc 10 196 213 2025-03-25T22:50:44Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #REDIRECT [[Template:Ambox/doc]] 286a3914c1d2770ff27394ac3d3f36a685542cb8 Category:Candidates for deletion 14 197 214 2025-03-25T22:50:46Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Categories for loading gadgets 14 198 215 2025-03-25T22:50:47Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Wiki maintenance]] 197b5fc8ebad5537759adacc0079b4b2662cb4c4 Category:Technocide Wiki 14 199 216 2025-03-25T22:50:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This is the top-level category. It contains meta categories and pages about the wiki. 8935f2b3e97edfeadd7bb206f1e17c03099ec24a Category:Documentation templates 14 200 217 2025-03-25T22:50:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Formatting templates 14 201 218 2025-03-25T22:50:49Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Hatnote templates 14 202 219 2025-03-25T22:50:50Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Hidden categories 14 203 220 2025-03-25T22:50:51Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki These categories are hidden on article pages. [[Category:Wiki maintenance]] e4d17499a8377d3f2b4b4a618a671e53111f43ca Category:Images 14 204 221 2025-03-25T22:50:52Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Media]] b141d2b9971d6efe9f59bd03449781e71411c631 Category:Infobox templates 14 205 222 2025-03-25T22:50:53Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Key template documentation 14 206 223 2025-03-25T22:50:54Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Template documentation]] e65ecf60878d4707b3b4c1e3962615e2d5f3b2ab Category:Legal notices 14 207 224 2025-03-25T22:50:55Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:{{SITENAME}}]] dd8aaa34cf600c1567d240a3f4bc615164a11592 Category:License templates 14 208 225 2025-03-25T22:50:56Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Logos 14 209 226 2025-03-25T22:50:57Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Images]] 8820b63e35aedd9d2666fe40b965d4e91ce0a106 Category:Main page boxes 14 210 227 2025-03-25T22:50:58Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Main page templates]] ce086f8cfa39aeb8137ffe34e5d41aa38300cf4e Category:Main page templates 14 211 228 2025-03-25T22:50:58Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Maps failing data validation 14 212 229 2025-03-25T22:50:59Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ __HIDDENCAT__ [[Category:Wiki maintenance]] 57e36e9878c3eb806aa6ee6f748a5c5e0cdd5a97 Category:Media 14 213 230 2025-03-25T22:51:01Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:{{SITENAME}}]] dd8aaa34cf600c1567d240a3f4bc615164a11592 Category:Navigation templates 14 214 231 2025-03-25T22:51:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Notice templates 14 215 232 2025-03-25T22:51:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] 06eecdec29f6cb215c99cf216d1e3bdc8c30a95e Category:Pages containing omitted template arguments 14 216 233 2025-03-25T22:51:04Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages including data maps 14 217 234 2025-03-25T22:51:04Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] d17f98d5d77b5951b7a80755914239533ad6aba6 Category:Pages including data maps failing validation 14 218 235 2025-03-25T22:51:05Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ __HIDDENCAT__ [[Category:Wiki maintenance]] 57e36e9878c3eb806aa6ee6f748a5c5e0cdd5a97 Category:Pages setting LuaCache keys 14 219 236 2025-03-25T22:51:06Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ __HIDDENCAT__ [[Category:Wiki maintenance]] 57e36e9878c3eb806aa6ee6f748a5c5e0cdd5a97 Category:Pages using DynamicPageList3 dplvar parser function 14 220 237 2025-03-25T22:51:07Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] d17f98d5d77b5951b7a80755914239533ad6aba6 Category:Pages using DynamicPageList3 parser function 14 221 238 2025-03-25T22:51:08Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] d17f98d5d77b5951b7a80755914239533ad6aba6 Category:Pages using TabberTransclude parser tag 14 222 239 2025-03-25T22:51:09Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] d17f98d5d77b5951b7a80755914239533ad6aba6 Category:Pages using Tabber parser tag 14 223 240 2025-03-25T22:51:10Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] d17f98d5d77b5951b7a80755914239533ad6aba6 Category:Pages using duplicate arguments in template calls 14 224 241 2025-03-25T22:51:11Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages using the RSS extension 14 225 242 2025-03-25T22:51:12Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] d17f98d5d77b5951b7a80755914239533ad6aba6 Category:Pages where expansion depth is exceeded 14 226 243 2025-03-25T22:51:12Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages where template include size is exceeded 14 227 244 2025-03-25T22:51:13Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages where the unstrip depth limit is exceeded 14 228 245 2025-03-25T22:51:15Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages where the unstrip size limit is exceeded 14 229 246 2025-03-25T22:51:15Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with DRUID infoboxes 14 230 247 2025-03-25T22:51:17Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a DRUID infobox. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] 17ed4520e5c453209616df3c9b2306fce8ceb12f Category:Pages with Discord embeds 14 231 248 2025-03-25T22:51:17Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a {{tl|Discord}} embed. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] 11ff5616854d8913d2c371ae3c2c610278651846 Category:Pages with amboxes 14 232 249 2025-03-25T22:51:18Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with an {{tl|ambox}}. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] de382f794395f344d0147dbb96b9542d6f38f624 Category:Pages with broken file links 14 233 250 2025-03-25T22:51:19Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Wiki maintenance]] 197b5fc8ebad5537759adacc0079b4b2662cb4c4 Category:Pages with colors 14 234 251 2025-03-25T22:51:20Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a {{tl|color}}. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] bcca0312385263c30522c744df6a8c8856c68fab Category:Pages with failing Cargo queries 14 235 252 2025-03-25T22:51:21Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with hatnotes 14 236 253 2025-03-25T22:51:22Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a {{tl|hatnote}}. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] 4ac7721cfcffb2f181820164d95f3af8d86c4fd7 Category:Pages with ignored display titles 14 237 254 2025-03-25T22:51:23Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with math errors 14 238 255 2025-03-25T22:51:24Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with math render errors 14 239 256 2025-03-25T22:51:24Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with navboxes 14 240 257 2025-03-25T22:51:25Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a {{tl|navbox}}. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] 3e48f396fafee5d8aecf6cd0dcb554c769f485a9 Category:Pages with non-numeric formatnum arguments 14 241 258 2025-03-25T22:51:26Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with quotes 14 242 259 2025-03-25T22:51:27Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a {{tl|quote}}. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] 2f764cddd1fb264f48b896ffd6e892df3c391e90 Category:Pages with reference errors 14 243 260 2025-03-25T22:51:28Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with script errors 14 244 261 2025-03-25T22:51:29Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with spoilers 14 245 262 2025-03-25T22:51:30Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This category contains every page with a {{tl|spoiler}}. It can be used for maintenance but primarily exists to enable the use of gadgets for targeted CSS and JS. __HIDDENCAT__ __EXPECTUNUSEDCATEGORY__ [[Category:Categories for loading gadgets]] 5822aa87e8a8897673ff589d00d2f0d622aa3be5 Category:Pages with syntax highlighting errors 14 246 263 2025-03-25T22:51:31Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with template loops 14 247 264 2025-03-25T22:51:32Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Pages with too many expensive parser function calls 14 248 265 2025-03-25T22:51:33Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 MediaWiki:Copyright 8 249 266 2025-03-25T22:51:33Z Mr Pie 5 2833 Created page with "{{int:wikigg-copyright|CC BY-SA 4.0|$1}}" wikitext text/x-wiki {{int:wikigg-copyright|CC BY-SA 4.0|$1}} 999f12b472b0177c515e14cda21d5e4ddc0603e1 Category:Promotional images 14 250 267 2025-03-25T22:51:34Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki Official images used for purposes of promoting the game, that may not actually represent gameplay. [[Category:Images]] 80b893c439747ce681cf18cc579c3bc4c65cd502 Category:Stubs 14 251 268 2025-03-25T22:51:35Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Wiki maintenance]] 786037995b8f7e89762a8ea13b84ade091453c00 Category:Template documentation 14 252 269 2025-03-25T22:51:35Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Templates]] [[Category:Wiki maintenance]] c1800be0da4588b3b652fa5324aade2c496fb3c5 Category:Templates 14 253 270 2025-03-25T22:51:36Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:{{SITENAME}}]] dd8aaa34cf600c1567d240a3f4bc615164a11592 Category:Templates with no documentation 14 254 271 2025-03-25T22:51:37Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki __EXPECTUNUSEDCATEGORY__ [[Category:Templates]] [[Category:Wiki maintenance]] b1ff76c0593194e53e6bf42f37ca337a5493c57e Category:Wiki maintenance 14 255 272 2025-03-25T22:51:38Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki The sub-categories of this category contain pages that have been identified as needing attention for one or more of the following reasons: * Changes have been suggested that should be discussed first or are under discussion. * The page has flaws that need addressing by an editor with the knowledge or skills to help. * The action the page needs requires special rights. ''See also:'' * [[Special:BrokenRedirects|Broken redirects]] * [[Special:DoubleRedirects|Double redirects]] * [[Special:UncategorizedCategories|Uncategorized categories]] * [[Special:UncategorizedFiles|Uncategorized files]] * [[Special:UncategorizedPages|Uncategorized pages]] * [[Special:UncategorizedTemplates|Uncategorized templates]] * [[Special:WantedCategories|Wanted categories]] * [[Special:WantedFiles|Wanted files]] * [[Special:WantedPages|Wanted pages]] * [[Special:WantedTemplates|Wanted templates]] * [[Special:TrackingCategories|Other special tracking categories]] [[Category:{{SITENAME}}]] 4b90dc0dbd8c91e131e4ffcf22360b1c837b9717 Category:Wiki skin images 14 256 273 2025-03-25T22:51:39Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki [[Category:Images]] 8820b63e35aedd9d2666fe40b965d4e91ce0a106 Module:ArgsUtil 828 257 274 2025-03-25T22:51:40Z Mr Pie 5 2833 Adding default set of pages Scribunto text/plain local p = {} function p.merge() local f = mw.getCurrentFrame() local origArgs = f.args local parentArgs = f:getParent().args local args = {} for k, v in pairs(origArgs) do v = mw.text.trim(tostring(v)) if v ~= '' then args[k] = v end end for k, v in pairs(parentArgs) do v = mw.text.trim(v) if v ~= '' then args[k] = v end end return args end return p 1d1b2105bd857dcc5e33c8c0a8a780f67cbae72e Module:ArgsUtil/doc 828 258 275 2025-03-25T22:51:41Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This is a basic module for processing args. Usage: <syntaxhighlight lang="lua"> local util_args = require('Module:ArgsUtil') local p = {} function p.main(frame) local args = util_args.merge() -- it is not necessary to pass a `frame` object; `merge` will generate its own mw.logObject(args) -- `args` now contains args passed via the template merged with defaults provided directly via the invoke. -- anything the user sent via the template will be given priority. end return p </syntaxhighlight> == Extending this module == By design, {{ml|ArgsUtil}} is shipped with only a single function and no customization available; this simplifies documentation and covers nearly all use cases. An extended version of this module is available at [[support:Module:ArgsUtil|Module:ArgsUtil on the support wiki]] if you want additional functionality; and you can of course feel free to modify this module on your own wiki as needed. 6fc2a23dcff62ac5a222903e46bc56c07b0a2b1f Module:Infobox 828 259 276 2025-03-25T22:51:42Z Mr Pie 5 2833 Adding default set of pages Scribunto text/plain -- version 0.1.7 -------------------------------------- -- User settings, you can modify these -------------------------------------- -- if you want to not always use divs in your wiki (as opposed to tables), you can change this default -- just remember to change it back each time you update from the main "branch" on the support wiki! -- you can also control it per infobox with `|useDivs=yes` or `|useDivs=no` local USE_DIVS = true -- `false` or `true` -- default value to show if a param is missing in some but not all tabs. -- set to `nil` (not in quotes) to remove such rows altogether in the tabs where they're missing local TABBED_NONEXIST = nil -- `''` or `nil` or `'N/A'` etc. Don't put nil in quotes. --------------------------------------------------------------------------- -- Do not modify anything below this line unless you know what you're doing --------------------------------------------------------------------------- local h = {} local p = {} local hooks = {} function p.arraymap(frame) -- a lua implementation of Page Forms' arraymap local args = h.overwrite() local items = h.split(args[1], args[2] or ',') for i, item in ipairs(items) do items[i] = args[4]:gsub(args[3], item) end return table.concat(items, args[5] or ',') end function p.preprocess(frame) return frame:preprocess(frame.args[1] or frame:getParent().args[1]) end function p.main(frame) h.registerHooks() h.increment() local args = h.overwrite() local sep = args.sep or ',' h.castArgs(args, sep) if h.castBool(args.setmainimage or 'yes') then h.setMainImage(args.images[1]) end -- suggest to use HIDDENCAT here; will be used for maintenance & gadget imports return h.makeInfobox(args, sep), '[[Category:Pages with DRUID infoboxes]]' end function h.registerHooks() if not mw.title.new('Module:Infobox/Hooks').exists then return end hooks = require('Module:Infobox/Hooks') end function h.runHook(key, ...) if hooks[key] then hooks[key](...) end end function h.increment() -- optional use of VariablesLua for better compatibility local VariablesLua = mw.ext.VariablesLua if VariablesLua == nil then local res -- try to fall back to normal Variables res, h.counter = pcall( function() return mw.getCurrentFrame():callParserFunction('#var', {'DRUID_INFOBOX_ID', 0}) + 1 end ) if res then mw.getCurrentFrame():callParserFunction('#vardefine', {'DRUID_INFOBOX_ID', h.counter}) else -- else use a random number so at least there's some unique id h.counter = math.random(100000000000000000) -- random integer end else h.counter = VariablesLua.var('DRUID_INFOBOX_ID', 0) + 1 VariablesLua.vardefine('DRUID_INFOBOX_ID', h.counter) end end function h.castArgs(args, sep) h.runHook('onCastArgsStart', args, sep, args.kind) args.tabs = h.split(args.tabs or args.image_labels, sep) args.images = h.getImages(args, sep) args.sections = h.split(args.sections, sep) for _, section in ipairs(args.sections) do if h.castBool(args[section .. '_isdata']) then args[section .. 'Data'] = args[section] args[section] = section .. 'Data' args[section .. 'Data_nolabel'] = 'true' -- will be cast later end args[section] = h.split(args[section], sep) args[section .. '_tabs'] = h.split(args[section .. '_tabs'], sep) if #args.tabs > 0 and #args[section .. '_tabs'] > 0 then error(('You cannot specify |tabs= and |%s= at the same time, please pick one'):format(section .. '_tabs')) end end if args.useDivs then USE_DIVS = h.castBool(args.useDivs) end -- this would be in the outer scope, but we're hiding it h.entityType = USE_DIVS and 'div' or 'table' -- key of h.htmlEntities h.runHook('onCastArgsEnd', args, sep, args.kind) end function h.getImages(args, sep) if args.image and not args.images then args.images = args.image end if args.images then return h.split(args.images, sep) end if not args.tabs then return {} end local ret = {} for _, key in ipairs(args.tabs) do if args[key .. '_image'] then ret[#ret+1] = args[key .. '_image'] end end return ret end function h.setMainImage(file) if h.counter > 1 then return end if not file then return end local fileText = file:gsub('.-:', '') fileText = fileText:gsub('^([^|%]]+).*', '%1') -- setmainimage is guaranteed to exist on wiki.gg but may not exist on other wikis -- it's not a crucial piece of functionality so we'll fail silently if it doesn't exist pcall(function() mw.getCurrentFrame():callParserFunction{ name = '#setmainimage', args = { fileText }, } end) end function h.makeInfobox(args, sep) local out = mw.html.create(h.getTag('container')) :addClass('druid-infobox') :addClass('druid-container') :addClass('noexcerpt') :addClass(args.class) -- warning: class can be nil, don't concat anything :attr('id', args.id or ('druid-container-' .. h.counter)) h.runHook('onMakeOutputStart', out, args) if args.kind then out:addClass('druid-container-' .. h.escape(args.kind)) end h.printTitle(out, args) h.printImages(out, args.images, args) for _, section in ipairs(args.sections) do -- cannot begin tagging here because we don't know if any applicable args are present local cols = args[section .. '_columns'] local makeSection = cols and h.makeGridSection or h.makeSection out:node(makeSection(section, args[section], args, tonumber(cols))) end h.runHook('onMakeOutputEnd', out, args) -- category for gadget loading return out, '[[Category:Pages with DRUID infoboxes]]' end function h.printTitle(out, args) local tabs = args.tabs if not tabs or #tabs == 0 then h.printSimpleTitle(out, args) return end if not h.hasComplexData('title', tabs, args) then h.printSimpleTitle(out, args) return end local node = h.printTitleWrapper(out) h.printTabbedDataItem(node, 'title', tabs, args) end function h.printSimpleTitle(out, args) if args.title then local node = h.printTitleWrapper(out) node:wikitext(args.title) end end function h.printTitleWrapper(out) return out:tag(h.getTag('titleOuter')) :tag(h.getTag('titleInner')) :addClass('druid-title') :attr('colspan', 2) end function h.printTabbedDataItem(node, item, tabs, args) -- hasData isn't used in the title case but we will need to track this -- when we're printing section data later on -- so we'll just track it always local hasData = false for i, label in ipairs(tabs) do local div = node:tag('div') :addClass('druid-toggleable-data') :addClass('druid-toggleable') :attr('data-druid', h.counter .. '-' .. i) :attr('data-druid-tab-key', label) if h.getTabbedContent(args, label, item) then hasData = true div:wikitext('\n\n' .. h.getTabbedContent(args, label, item)) div:addClass('druid-toggleable-data-nonempty') else div:addClass('druid-toggleable-data-empty') end if i == 1 then div:addClass('focused') end end return hasData end function h.printImages(out, images, args) if #images == 0 and #args.tabs == 0 then return end -- burden is on the user to format this as an image. this should be done in the infobox template, -- with something like |image={{#if:{{{image|}}}|[[File:{{{image|}}}{{!}}300px{{!}}link=]]}} local td = out:tag(h.getTag('section')) :addClass('druid-section-container') :tag(h.getTag('cell')) :attr('colspan', 2) local tabs = args.tabs local tabTexts = h.getImageTabTexts(tabs, images, args) h.printTabs(td, tabs, tabTexts, false, args) if #images == 0 then return end if #images == 1 then td:addClass('druid-main-image') :wikitext(images[1]) if args.caption then td:tag('div') :addClass('druid-main-image-caption') :wikitext(args.caption) end return end td:addClass('druid-main-images') local imagesContainer = td:tag('div') :addClass('druid-main-images-files') for i, image in ipairs(images) do local container = imagesContainer:tag('div') :addClass('druid-main-images-file') :addClass('druid-toggleable') :attr('data-druid', h.counter .. '-' .. i) :wikitext(image) :attr('data-druid-tab-key', tabs[i]) local labelText if tabs[i] then labelText = args[tabs[i] .. '_label'] or tabs[i] else labelText = '[[Category:Infoboxes missing image labels]]Image ' .. i end if args[labelText .. '_caption'] then container:tag('div') :addClass('druid-main-images-caption') :wikitext(args[labelText .. '_caption']) end if i == 1 then container:addClass('focused') end end end function h.getImageTabTexts(tabs, images, args) if #tabs == 0 and #images <= 1 then return {} end local texts = {} local i = 1 while images[i] or tabs[i] do if tabs[i] then texts[i] = args[tabs[i] .. '_label'] or tabs[i] else texts[i] = '[[Category:Infoboxes missing image labels]]Image ' .. i end i = i + 1 end return texts end function h.printTabs(td, tabs, texts, isSection, args) if #texts == 0 then return end local container = td:tag('div') :addClass('druid-main-images-labels') :addClass('druid-tabs') if isSection then container:addClass('druid-section-tabs') end for i, item in ipairs(tabs) do local label = container:tag('div') :addClass('druid-main-images-label') :addClass('druid-tab') :addClass('druid-toggleable') :attr('data-druid', h.counter .. '-' .. i) :wikitext(texts[i]) :attr('data-druid-tab-key', item) if isSection then label:addClass('druid-section-tab') else label:addClass('druid-title-tab') end if i == 1 then label:addClass('focused') end -- this can be null, don't concat anything here label:addClass(args[item .. '_class']) end end function h.makeGridSection(section, sectionFields, args, numCols) local numItems = h.countItems(sectionFields, section, args) if numItems == 0 then return end local node = mw.html.create(h.getTag('section')) :addClass('druid-section-container') h.printSectionHeader(node, section, args) h.printSectionTabs(node, section, args) local tr = node:tag(h.getTag('row')) :attr('data-druid-section-row', h.escape(section)) if args[section .. '_collapsed'] then tr:addClass('druid-collapsed') end local grid = tr:tag(h.getTag('cell')) :attr('colspan', 2) :addClass('druid-grid-section') :addClass('druid-grid-section-' .. h.escape(section)) :addClass(args[section .. '_class']) -- warning: class can be nil, don't concat anything :tag('div') :addClass('druid-grid') local row, col, i = 1, 1, 1 local sizeOfLastRow = numItems % numCols local lcm = h.getNumGridCols(numItems, sizeOfLastRow, numCols) grid:css('grid-template-columns', ('repeat(%s, 1fr)'):format(lcm)) local size = lcm / numCols for _, item in ipairs(sectionFields) do local node = mw.html.create('div') local shouldPrint = h.printData(node, item, section, args) if shouldPrint then if i == numItems - sizeOfLastRow + 1 then size = lcm / sizeOfLastRow end i = i + 1 local gStart = (col - 1) * size + 1 local gEnd = (col) * size + 1 local itemContainer = grid:tag('div') :addClass('druid-grid-item') :addClass('druid-grid-item-' .. h.escape(item)) :addClass(args[item .. '_class']) -- warning: class can be nil, don't concat anything :css('grid-column', ('%s / %s'):format(gStart, gEnd)) :css('grid-row', row) if not h.castBool(args[item .. '_nolabel']) then h.printLabel(itemContainer:tag('div'), item, args) end itemContainer:node(node) if col == numCols then row = row + 1 col = 1 else col = col + 1 end end end return node end function h.makeSection(section, sectionFields, args) if section == '' then return end -- bruteforce fix for trailing commas local shouldPrint = false local container = mw.html.create(h.getTag('section')) :addClass('druid-section-container') :addClass(args[section .. '_class']) -- warning: class can be nil, don't concat anything h.printSectionHeader(container, section, args) h.printSectionTabs(container, section, args) for _, item in ipairs(sectionFields) do local node = mw.html.create(h.getTag('cell')) local shouldPrintItem = h.printData(node, item, section, args) if shouldPrintItem then shouldPrint = true local tr = container:tag(h.getTag('row')) :addClass('druid-row') :addClass('druid-row-' .. h.escape(item)) :addClass(args[item .. '_class']) -- warning: class can be nil, don't concat anything :attr('data-druid-section-row', h.escape(section)) if args[section .. '_collapsed'] then tr:addClass('druid-collapsed') end if h.castBool(args[item .. '_wide']) or h.castBool(args[item .. '_nolabel']) then node :attr('colspan', 2) :addClass('druid-data-wide') else h.printLabel(tr:tag(h.getTag('label')), item, args) end tr:node(node) end end if not shouldPrint then return nil end return container end function h.countItems(sectionFields, section, args) local numItems = 0 for _, v in ipairs(sectionFields) do -- we aren't actually printing here, but we're finding out if we should print anything -- because we need the count of columns before we print anything in grid data if h.printData(mw.html.create(), v, section, args) then numItems = numItems + 1 end end return numItems end function h.getNumGridCols(numItems, sizeOfLastRow, numCols) if not numCols then return numItems, 1 end if numItems < numCols then return numItems, 1 end if sizeOfLastRow == 0 then return numCols, 1 end local a, b = sizeOfLastRow, numCols while b ~= 0 do a, b = b, a % b end local lcm = sizeOfLastRow * numCols / a return lcm end function h.printLabel(node, item, args) return node :addClass('druid-label') :addClass('druid-label-' .. h.escape(item)) :wikitext(args[item .. '_display'] or args[item .. '_label'] or item) end function h.printData(node, item, section, args) -- prints data to the node -- and also returns whether the item is nonempty or not local hasData = false local sectionTabs = args[section .. '_tabs'] local tabs = args.tabs if sectionTabs and #sectionTabs > 0 then tabs = sectionTabs end if not tabs or #tabs == 0 then return h.printSimpleData(node, item, args) end if not h.hasComplexData(item, tabs, args) then return h.printSimpleData(node, item, args) end hasData = hasData or h.printTabbedDataItem(node, item, tabs, args) if hasData then node:addClass('druid-data') end return hasData end function h.getTabbedContent(args, label, item) return args[label .. '_' .. item] or args[item] or TABBED_NONEXIST end function h.printSimpleData(node, item, args) if args[item] and type(args[item]) ~= 'string' then error(("Invalid use of field %s as both a section and a data value"):format(item)) end if not args[item] then return false end node:addClass('druid-data') :addClass('druid-data-' .. h.escape(item)) :addClass('druid-data-nonempty') :wikitext('\n\n' .. args[item]) return true end function h.hasComplexData(item, tabs, args) for _, v in ipairs(tabs) do if args[v .. '_' .. item] then return true end end return false end function h.printSectionHeader(node, section, args) if h.castBool(args[section .. '_nolabel']) then return end local tr = node:tag(h.getTag('row')) :attr('data-druid-section', h.escape(section)) local th = tr:tag(h.getTag('sectionTitle')) :attr('colspan', 2) :addClass('druid-section') :addClass('druid-section-' .. h.escape(section)) if args[section .. '_collapsible'] or args[section .. '_collapsed'] then tr:addClass('druid-collapsible') if args[section .. '_collapsed'] then tr:addClass('druid-collapsible-collapsed') end end local emptySections = {} for _, label in ipairs(args.tabs) do local hasLabel = false for _, item in ipairs(args[section] or {}) do if h.getTabbedContent(args, label, item) then hasLabel = true end end if not hasLabel then emptySections[label] = true end end if not next(emptySections) then th:wikitext(args[section .. '_label'] or section) return end for i, label in ipairs(args.tabs) do local div = th:tag('div') :addClass('druid-toggleable-heading') :addClass('druid-toggleable') :attr('data-druid', h.counter .. '-' .. i) :wikitext(args[section .. '_label'] or section) -- we are going to print the section content even in empty nodes -- for compatibility with browsers without :has, where hiding empty rows won't happen if emptySections[label] then div:addClass('druid-toggleable-heading-empty') end if i == 1 then div:addClass('focused') end end end function h.printSectionTabs(node, section, args) local tabs = args[section .. '_tabs'] if not tabs or #tabs == 0 then return end local tr = node:tag(h.getTag('sectionTabsOuter')) :attr('data-druid-section', h.escape(section)) local th = tr:tag(h.getTag('sectionTabs')) :attr('colspan', 2) :addClass('druid-section-tabs') :addClass('druid-section-tabs-' .. h.escape(section)) local texts = {} for i, item in ipairs(tabs) do texts[i] = args[item .. '_label'] or item end h.printTabs(th, tabs, texts, true, args) end ---------------------------- -- general utility functions ---------------------------- function h.overwrite() -- this is a generic utility function that collects args from the invoke call & the parent template. -- normally, you merge args with parent template overwriting the invoke call, but -- since we'll be putting markup/formatting into our invoke call, -- we actually want to overwrite what the user sent. local f = mw.getCurrentFrame() local origArgs = f.args local parentArgs = f:getParent().args local args = {} for k, v in pairs(parentArgs) do v = mw.text.trim(v) if v ~= '' then args[k] = v end end for k, v in pairs(origArgs) do v = mw.text.trim(tostring(v)) if v ~= '' then args[k] = v end end return args end -- generic utility functions -- these would normally be provided by other modules, but to make installation easy -- I'm including everything here function h.split(text, pattern, plain) if not text then return {} end local ret = {} for m in h.gsplit(text, pattern, plain) do ret[#ret+1] = m end return ret end function h.gsplit( text, pattern, plain ) if not pattern then pattern = ',' end if not plain then pattern = '%s*' .. pattern .. '%s*' end local s, l = 1, text:len() return function () if s then local e, n = text:find( pattern, s, plain ) local ret if not e then ret = text:sub( s ) s = nil elseif n < e then -- Empty separator! ret = text:sub( s, e ) if e < l then s = e + 1 else s = nil end else ret = e > s and text:sub( s, e - 1 ) or '' s = n + 1 end return ret end end, nil, nil end function h.escape(s) s = s:gsub(' ', '') :gsub('"', '') :gsub("'", '') :gsub("%?", '') :gsub("%%", '') :gsub("%[", '') :gsub("%]", '') :gsub("{", '') :gsub("}", '') :gsub("!", '') return s end -- normally I would make these constants at the top of the file -- but I don't want to mistake them with user-set constants h.boolFalse = { ['false'] = true, ['no'] = true, [''] = true, ['0'] = true, ['nil'] = true } function h.castBool(x) if not x then return false end return not h.boolFalse[tostring(x):lower()] end h.htmlEntities = { table = { container = 'table', titleOuter = 'tr', titleInner = 'th', section = '', sectionTitle = 'th', sectionTabsOuter = 'tr', sectionTabs = 'td', row = 'tr', label = 'th', cell = 'td', }, div = { container = 'div', titleOuter = 'div', titleInner = 'div', section = 'div', sectionTitle = 'div', sectionTabsOuter = 'div', sectionTabs = 'div', row = 'div', label = 'div', cell = 'div', } } function h.getTag(key) -- try not to totally fail here return h.htmlEntities[h.entityType or 'div'][key] end return p 0b872baa88950499ed588906ea3b07f363640076 Module:Infobox/doc 828 260 277 2025-03-25T22:51:43Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{luadoc}} This module enables the creation of [[support:DRUID infoboxes|DRUID infoboxes]]. 0ce687b29fc5e2d6cad14853a8412fa91910000f Module:Main page 828 261 278 2025-03-25T22:51:44Z Mr Pie 5 2833 Adding default set of pages Scribunto text/plain local p = {} local h = {} -- merge args from frame and frame:getParent() function h.mergeArgs(frame) local inputArgs = {} for k, v in pairs(frame.args) do v = mw.text.trim(tostring(v)) if v ~= '' then inputArgs[k] = v end end for k, v in pairs(frame:getParent().args) do v = mw.text.trim(v) if v ~= '' then inputArgs[k] = v end end return inputArgs end -------------------------------------------------------------------- function p.main(frame) local args = h.mergeArgs(frame) -- use the rootpage parameter if given, otherwise use the current page name local rootpage = args['rootpage'] or mw.title.getCurrentTitle().fullText -- parse the arguments into CSS variables that contain legal syntax for grid-template-areas local desktop = "--main-page-layout--desktop: '" .. string.gsub(args['desktop'], '\n', "' '") .. "';" local tablet = "--main-page-layout--tablet: '" .. string.gsub(args['tablet' ], '\n', "' '") .. "';" local mobile = "--main-page-layout--mobile: '" .. string.gsub(args['mobile' ], '\n', "' '") .. "';" -- grid-template-columns overrides local desktop_cols = mw.text.trim(string.gsub(args['desktop-columns'] or '', ';', '')) local tablet_cols = mw.text.trim(string.gsub(args[ 'tablet-columns'] or '', ';', '')) local mobile_cols = mw.text.trim(string.gsub(args[ 'mobile-columns'] or '', ';', '')) -- set the variables used by grid-template-columns if desktop_cols ~= '' then desktop = desktop .. '--main-page-layout-columns--desktop: '.. desktop_cols ..';' end if tablet_cols ~= '' then tablet = tablet .. '--main-page-layout-columns--tablet: '.. tablet_cols ..';' end if mobile_cols ~= '' then mobile = mobile .. '--main-page-layout-columns--mobile: '.. mobile_cols ..';' end local boxes = {} -- list of all boxes local boxes_in_layout = {} -- list of layouts, then list of all boxes in that layout local missing_boxes = {} -- list of layouts, then list of boxes that are *not* included in that layout -- add every box referenced in the layout rules once function parse_layout(layout) for _,name in pairs(mw.text.split(mw.text.trim(args[layout]), '%s')) do boxes[name] = true -- list as set boxes_in_layout[layout][name] = true end end local layouts = {'desktop', 'tablet', 'mobile'} -- loop through the layouts the first time to set up the box lists for _,layout in pairs(layouts) do boxes_in_layout[layout] = {} missing_boxes[layout] = {} parse_layout(layout) end -- then loop through the layouts a second time because we need to compare those completed lists to check for missing boxes for _,layout in pairs(layouts) do for name,_ in pairs(boxes) do if boxes_in_layout[layout][name] ~= true then mw.addWarning( 'WARNING: the \"' .. name .. '\" box is missing in the ' .. layout .. ' layout. If this is intentional, you can ignore this warning.') missing_boxes[layout][name] = true end end end -- start our mp-container wrapper, and add our variables from earlier as inline styles to declare them -- the rootpage is added to the dataset so it's easily accessible by mp-edit-links.js and it doesn't need to make its own API call local output = mw.html.create() local container = output:tag('div'):attr('id', 'mp-container'):cssText(desktop .. tablet .. mobile):attr('data-rootpage', rootpage) -- loop through boxes and add the relevant main page subpages into the output for box,_ in pairs(boxes) do mw.ext.VariablesLua.vardefine('imp-variable-id', box) -- using a vardefine lets us pass this directly to the template without going through the user-facing box local pre_vardefine = '' for _,layout in pairs(layouts) do pre_vardefine = pre_vardefine .. (missing_boxes[layout][box] and '0' or '1') .. ',' end -- formatted as a psuedo-bitmask to reduce variable usage, "<display-on-destop>, <display-on-tablet>, <display-on-mobile>," each value is 0 or 1 (trailing comma is insignificant) -- expected to be used with #explode in the template receiving the variable mw.ext.VariablesLua.vardefine('imp-variable-display-box', pre_vardefine) if mw.title.new(rootpage .. '/' .. box).exists then container:wikitext(frame:expandTemplate{ title = ':' .. rootpage .. '/' .. box}) else container:wikitext(frame:expandTemplate{ title = 'Main page box/missing', args = { box, rootpage = rootpage}}) -- See [[Template:Main page box/missing]] end end return output end return p 048647e5c442756f2b67e3e3a22c405e2234715d Module:Navbox 828 262 279 2025-03-25T22:51:45Z Mr Pie 5 2833 Adding default set of pages Scribunto text/plain -- version 1.2.2 -- config table for RANGER. -- If you want to change the default config, DO NOT change it here, -- please do it via the `onLoadConfig` hook in [[Module:Navbox/Hooks]]. local config = { default_navbox_class = "navigation-not-searchable", -- Base value of the `class` parameter. default_title_class = nil, -- Base value of the `title_class` parameter. default_above_class = nil, -- Base value of the `above_class` parameter. default_below_class = nil, -- Base value of the `below_class` parameter. default_section_class =nil, -- Base value of the `section_class` parameter. default_header_class = nil, -- Base value of the `header_class` parameter. default_group_class = nil, -- Base value of the `group_class` parameter. default_list_class = 'hlist', -- Base value of the `list_class` parameter. default_header_state = nil, -- Base value of the `state` parameter. editlink_hover_message_key = 'Navbox-edit-hover', -- The system message name for hover text of the edit icon. custom_render_handle = nil, -- usually for debugging purposes only. if set, it should be a function accept 2 parameters: `dataTree` and `args`, and return a string as module output. } --------------------------------------------------------------------- -- Argument alias. local CANONICAL_NAMES = { ['titlestyle'] = 'title_style', ['listclass'] = 'list_class', ['groupstyle'] = 'group_style', ['collapsible'] = 'state', ['editlink'] = 'meta', ['editlinks'] = 'meta', ['editicon'] = 'meta', ['edit_link'] = 'meta', ['edit_links'] = 'meta', ['edit_icon'] = 'meta', ['navbar'] = 'meta', ['name'] = 'template', ['evenodd'] = 'striped', ['class'] = 'navbox_class', ['css'] = 'navbox_style', ['style'] = 'navbox_style', ['group'] = '1:group', ['list'] = '1:list', } local DEFAULT_ARGS = { ['meta'] = true, } local STATES = { ['no'] = '', ['off'] = '', ['plain'] = '', ['collapsed'] = 'mw-collapsible mw-collapsed', } local BOOL_FALSE = { ['no'] = true, ['off'] = true, ['false'] = true, } local STRIPED = { ['odd'] = 'striped-odd', ['swap'] = 'striped-odd', ['y'] = 'striped-even', ['yes'] = 'striped-even', ['on'] = 'striped-even', ['even'] = 'striped-even', ['striped'] = 'striped-even', } local NAVBOX_CHILD_INDICATOR = '!!C$H$I$L$D!!' local NAVBOX_CHILD_INDICATOR_LENGTH = string.len( NAVBOX_CHILD_INDICATOR ) local CLASS_PREFIX = 'ranger-' --------------------------------------------------------------------- local p = {} local h = {} -- non-public local hooks = mw.title.new('Module:Navbox/Hooks').exists and require('Module:Navbox/Hooks') or {} --------------------------------------------------------------------- -- For templates: {{#invoke:navbox|main|...}} function p.main(frame) local args = p.mergeArgs(frame) return p.build(args, true) end -- For modules: return require('module:navbox').build(args) -- By default this method will skip the arguments sanitizing phase -- (and onSanitizeArgsStart/onSanitizeArgsEnd hooks). -- Set `doParseArgs` to true to do arguments sanitizing. -- If `customConfig` table is provided, it will be merged into default config table (after onLoadConfig()). -- If `customHooks` table is provided, all default hook handles will be overrided, unprovided hooks will be empty. function p.build(args, doParseArgs, customConfig, customHooks) if customHooks then hooks = customHooks end if doParseArgs then args = h.parseArgs(args) end h.runHook('onLoadConfig', config, args) if customConfig then for k,v in pairs(customConfig) do config[k] = v end end --merge default args for k,v in pairs(DEFAULT_ARGS) do if args[k] == nil then args[k] = DEFAULT_ARGS[k] end end h.runHook('onBuildTreeStart', args) local dataTree = h.buildDataTree(args) h.runHook('onBuildTreeEnd', dataTree, args) if type(config.custom_render_handle) == 'function' then return config.custom_render_handle(dataTree, args) else return h.render(dataTree) end end -- merge args from frame and frame:getParent() -- It may be used when creating custom wrapping navbox module. -- -- For example, Module:PillNavbox -- -- local RANGER = require('Module:Navbox') -- local p = {} -- function p.main(frame) -- return RANGER.build(RANGER.mergeArgs(frame), true, { -- default_navbox_class = 'pill', -- use "pill" style by default. -- }) -- end -- return p -- function p.mergeArgs(frame) local inputArgs = {} for k, v in pairs(frame.args) do v = mw.text.trim(tostring(v)) if v ~= '' then inputArgs[k] = v end end for k, v in pairs(frame:getParent().args) do v = mw.text.trim(v) if v ~= '' then inputArgs[k] = v end end return inputArgs end ------------------------------------------------------------------------ function h.parseArgs(inputArgs) h.runHook('onSanitizeArgsStart', inputArgs) local args = {} for k, v in pairs(inputArgs) do if type(k) == 'string' then -- all named args have already been trimmed local key = h.normalizeKey(k) args[key] = h.normalizeValue(key, v) else args[k] = mw.text.trim(v) -- keep number-index arguments (for {{navbox|child|...}}) end end h.runHook('onSanitizeArgsEnd', args, inputArgs) return args end -- Normalize the name string of arguments. -- the normalized form is (index:)?name, in which: -- index is number index such as 1, 1.3, 1.2.45, -- name is in lowercase underscore-case, such as group, group_style -- e.g: header_state, 1.3:list_style -- the input argument name can be: -- * camel-case: listStyle, ListStyle -- * space separated: list style -- * prefix+index+postfix?, and can be in camel-case or space/hyphen separated or mixed: list 1 style, list1, list1Style, list1_style -- * index.name: 1.3.list -- * index_name: 1.3_list (Space separated are treated as underscore separated, therefore 1.3 list are vaild too) function h.normalizeKey(s) -- camel-case to lowercase underscore-case s = s:gsub('%l%f[%u]', '%0_') -- listStyle to list_style s = (s:gsub(' ', '_')):lower() -- space to underscore s = s:gsub('%l%f[%d]', '%0_') -- group1* to group_1* s = s:gsub('%d%f[%l]', '%0_') -- *1style to *1_style -- number format x_y_z to x.y.z s = s:gsub('(%d)_%f[%d]', '%1%.') -- move index to the beginning: -- group_1.2_style to 1.2:group_style -- group_1 to 1:group s = s:gsub('^([%l_]+)_([%d%.]+)', '%2:%1') -- support index.name and index_name: -- 1.2.group / 1.2_group to 1.2:group s = s:gsub('^([%d%.]+)[%._]%f[%l]', '%1:') -- now the key should be in normalized form, if the origin key is vaild -- standardize *_css to *_style s = s:gsub('_css$', '_style') -- standardize *collapsible to *state s = s:gsub('collapsible$', 'state') -- standardize all aliases to the canonical name return CANONICAL_NAMES[s] or s end function h.normalizeValue(k, v) k = tostring(k) if k:find('_style$') then v = (v .. ';'):gsub(';;', ';') return v elseif k:find('state$') then return STATES[v] elseif k == 'striped' then return STRIPED[v] elseif k == 'meta' then return not BOOL_FALSE[v] elseif v:sub(1, 2) == '{|' or v:match('^[*:;#]') then -- Applying nowrap to lines in a table does not make sense. -- Add newlines to compensate for trim of x in |parm=x in a template. return '\n' .. v ..'\n' end return v end -- parse arguments, convert them to structured data tree function h.buildDataTree(args) -- parse args to a tree local tree = h.buildTree(args) -- build root navbox data local data = h.buildNavboxData(tree.info) -- Recursively build section tree if tree.children then data.sections = h.buildSections(tree.children, { listClass = h.mergeAttrs(args.list_class, config.default_list_class), listStyle = args.list_style, groupClass = h.mergeAttrs(args.group_class, config.default_group_class), groupStyle = args.group_style, sectionClass = h.mergeAttrs(args.section_class, config.default_section_class), sectionStyle = args.section_style, headerClass = h.mergeAttrs(args.header_class, config.default_header_class), headerStyle = args.header_style, headerState = args.header_state or config.default_header_state, }) end if args[1] == 'child' then data.CHILD_MODE = true end return data end function h.buildSections(list, defaults) local sections = {} local section = nil for k, node in h.orderedPairs(list) do local info = node.info or {} --start a new section if needed if info.header or not section then section = { class = h.mergeAttrs(info.section_class, defaults.sectionClass), style = h.mergeAttrs(info.section_style, defaults.sectionStyle), body = {} } -- Section header if needed. -- If the value of a `|header_n=` is two or more consecutive "-" characters (e.g. --, -----), -- it means start a new section without header, and the new section will be not collapsable. if info.header and not string.match(info.header, '^%-%-+$') then section.header = { content = info.header, class = h.mergeAttrs(info.header_class, defaults.headerClass), style = h.mergeAttrs(info.header_style, defaults.headerStyle), } section.state = info.state or defaults.headerState or 'mw-collapsible' end sections[#sections+1] = section end -- above/below for this section if info.above then section.above = { content = info.above, class= h.mergeAttrs(info.above_class, config.default_above_class), style = info.above_style, } end if info.below then section.below = { content = info.below, class= h.mergeAttrs(info.below_class, config.default_below_class), style = info.below_style, } end -- this group+list row if info.group or info.list or node.children then local row = {} section.body[#section.body+1] = row if info.group then row.group = { content = info.group, class = h.mergeAttrs(info.group_class, defaults.groupClass), style = h.mergeAttrs(info.group_style, defaults.groupStyle), } end if info.list then if string.sub(info.list, 1, NAVBOX_CHILD_INDICATOR_LENGTH) == NAVBOX_CHILD_INDICATOR then -- it is from {{navbox|child| ... }} row.sections = mw.text.jsonDecode(string.sub(info.list, NAVBOX_CHILD_INDICATOR_LENGTH+1)) else row.list = { content = info.list, class = h.mergeAttrs(info.list_class, defaults.listClass), style = h.mergeAttrs(info.list_style, defaults.listStyle), } end end -- sub-nodes, will override {{navbox|child| ... }} if node.children then row.sections = h.buildSections(node.children, defaults) end end end -- flatten if needed: -- If a section has only one list with no content and no corresponding group but has sublists, these sublists will be moved to upper level. for _, sect in ipairs(sections) do if #sect.body == 1 then local node = sect.body[1] if not node.group and not node.list and node.sections and #node.sections == 1 and not node.sections[1].header then sect.body = node.sections[1].body end end end return sections end function h.buildNavboxData(info) local data = { state = info.state or 'mw-collapsible', -- here we need a default value for empty input striped = info.striped, class = h.mergeAttrs(info.navbox_class, config.default_navbox_class), style = info.navbox_style, } -- data for titlebar if info.title or info.meta or data.state ~= '' then data.title = { content = info.title, class = h.mergeAttrs(info.title_class, config.default_title_class), style = info.title_style, } if info.meta then data.metaLinks = { link = info.meta_link, -- will be used as [[$link|$text]] url = info.meta_url, -- will be used as [$url $text], only if there is no data.metaLinks.link text = info.meta_text, --hovertext } if not info.meta_link and not info.meta_url then -- default link target local title = mw.title.new(info.template or mw.getCurrentFrame():getParent():getTitle(), 'Template') if not title then error('Invalid title ' .. info.template) end data.metaLinks.link = title.fullText end if not info.meta_text then local msg = mw.message.new(config.editlink_hover_message_key) data.metaLinks.text = msg:exists() and msg:plain() or 'View or edit this template' end end end -- above/below if info.above then data.above = { content = info.above, class= h.mergeAttrs(info.above_class, config.default_above_class), style = info.above_style, } end if info.below then data.below = { content = info.below, class= h.mergeAttrs(info.below_class, config.default_below_class), style = info.below_style, } end return data end -- parse arguments, convert them into a tree based on their index -- each node on tree is { info = { #data for this node# }, children = {#children nodes#} } function h.buildTree(args, defaults) local tree = { info = {} } local check = function(key, value) local index, name = string.match(key, '^([%d%.]+):(.+)$') -- no number index found, for root node if not index then tree.info[key] = value return end -- filter invalid number index if string.match(index, '^%.') or string.match(index, '%.$') or string.match(index, '%.%.') then return end -- find the node that matches the index in the tree local arr = mw.text.split(index, '.', true) local node = tree for _, v in ipairs(arr) do v = tonumber(v) if not node.children then node.children = {} end if not node.children[v] then node.children[v] = { info = {} } end node = node.children[v] end node.info[name] = value end for k,v in pairs(args) do check(k, v) end return tree end function h.render(data) -- handle {{navbox|child|...}} syntax if data.CHILD_MODE then return NAVBOX_CHILD_INDICATOR..mw.text.jsonEncode(data.sections) end ----- normal case ----- local out = mw.html.create() -- build navbox container local navbox = out:tag('div') :attr('role', 'navigation'):attr('aria-label', 'Navbox') :addClass(CLASS_PREFIX..'navbox') :addClass(data.class) :addClass(data.striped) :addClass(data.state) :cssText(data.style) --title bar if data.title then local titlebar = navbox:tag('div'):addClass(CLASS_PREFIX..'title') titlebar:tag('div'):addClass('mw-collapsible-toggle-placeholder') if data.metaLinks then titlebar:node(h.renderMetaLinks(data.metaLinks)) end if data.title then titlebar:addClass(data.title.class):tag('div') :addClass(CLASS_PREFIX..'title-text') :addClass(data.title.class) :cssText(data.title.style) :wikitext(data.title.content) end end --above if data.above then navbox:tag('div') :addClass(CLASS_PREFIX..'above mw-collapsible-content') :addClass(data.above.class) :cssText(data.above.style) :wikitext(data.above.content) :attr('id', (not data.title) and mw.uri.anchorEncode(data.above.content) or nil) -- id for aria-labelledby attribute, if no title end -- sections if data.sections then h.renderSections(data.sections, navbox, 0, true) else -- Insert a blank section for completely empty navbox to ensure it behaves correctly when collapsed. if not data.above and not data.below then navbox:tag('div'):addClass(CLASS_PREFIX..'section mw-collapsible-content') end end --below if data.below then navbox:tag('div') :addClass(CLASS_PREFIX..'below mw-collapsible-content') :addClass(data.below.class) :cssText(data.below.style) :wikitext(data.below.content) end return tostring(out)..'[[Category:Pages with navboxes]]' -- suggest to use HIDDENCAT here; will be used for maintenance & gadget imports end function h.renderSections(data, container, level, even) for i,sect in ipairs(data) do --section box local section = container:tag('div') :addClass(CLASS_PREFIX..'section mw-collapsible-content') :addClass(sect.class) :addClass(sect.state) :cssText(sect.style) -- section header if sect.header then section:tag('div') :addClass(CLASS_PREFIX..'header') :addClass(sect.header.class) :cssText(sect.header.style) :tag('div'):addClass('mw-collapsible-toggle-placeholder'):done() :tag('div'):addClass(CLASS_PREFIX..'header-text'):wikitext(sect.header.content) end -- above: if sect.above then section:tag('div') :addClass(CLASS_PREFIX..'above mw-collapsible-content') :addClass(sect.above.class) :cssText(sect.above.style) :wikitext(sect.above.content) end -- body: groups&lists local box = section:tag('div'):addClass(CLASS_PREFIX..'section-body mw-collapsible-content') even = h.renderBody(sect.body, box, level, (level==0) and true or even) -- reset even status each section -- below: if sect.below then section:tag('div') :addClass(CLASS_PREFIX..'below mw-collapsible-content') :addClass(sect.below.class) :cssText(sect.below.style) :wikitext(sect.below.content) end end return even end function h.renderMetaLinks(info) local box = mw.html.create('span'):addClass(CLASS_PREFIX..'meta') local meta = box:tag('span'):addClass('nv nv-view') if info.link then meta:wikitext('[['..info.link..'|') :tag('span'):wikitext(info.text):attr('title', info.text):done() :wikitext(']]') elseif info.url then meta:wikitext('['..info.url..' ') :tag('span'):wikitext(info.text):attr('title', info.text):done() :wikitext(']') end return box end function h.renderBody(info, box, level, even) local count = 0 for _,v in h.orderedPairs(info) do if v.group or v.list or v.sections then count = count + 1 -- row container local row = box:tag('div'):addClass(CLASS_PREFIX..'row') -- group cell if v.group or (v.sections and level > 0 and not v.list) then local groupCell = row:tag('div') :addClass(CLASS_PREFIX..'group level-'..level) :addClass((level > 0) and CLASS_PREFIX..'subgroup' or nil) local groupContentWrap = groupCell:tag('div'):addClass(CLASS_PREFIX..'wrap') if v.group then groupCell:addClass(v.group.class):cssText(v.group.style) groupContentWrap:wikitext(v.group.content) else groupCell:addClass('empty') row:addClass('empty-group-list') end else row:addClass('empty-group') end -- list cell local listCell = row:tag('div'):addClass(CLASS_PREFIX..'listbox') if not v.list and not v.sections then listCell:addClass('empty') row:addClass('empty-list') end if v.list or (v.group and not v.sections) then --listCell:node(h.renderList(v['list'] or '', k, level, args)) even = not even -- flip even/odd status local cell = listCell:tag('div') :addClass(CLASS_PREFIX..'wrap') :addClass(even and CLASS_PREFIX..'even' or CLASS_PREFIX..'odd') if v.list then cell:addClass(v.list.class):cssText(v.list.style) :tag('div'):addClass(CLASS_PREFIX..'list'):wikitext(v.list.content) end end if v.sections then local sublistBox = listCell:tag('div'):addClass(CLASS_PREFIX..'sublist level-'..level) even = h.renderSections(v.sections, sublistBox, level+1, even) end end end if count > 0 then box:css('--count', count) -- for flex-grow end return even end -- pairs, but sort the keys alphabetically function h.orderedPairs(t, f) local a = {} for n in pairs(t) do table.insert(a, n) end table.sort(a, f) local i = 0 -- iterator variable local iter = function () -- iterator function i = i + 1 if a[i] == nil then return nil else return a[i], t[a[i]] end end return iter end -- For cascading parameters, such as style or class, they are merged in exact order (from general to specific). -- Any parameter starting with multiple hyphens(minus signs) will terminate the cascade. -- An example: -- For group_1.1, its style is affected by parameters |group_1.1_style=... , |subgroup_level_1_style=... , and |subgroup_style=... . -- If we have |group_1.1_style= color:red; |subgroup_level_1_style= font-weight: bold; and |subgroup_style= color: green; , -- the style of group_1.1 will be style="color:green; font-weight: bold; color: red;" ; -- if we have |group_1.1_style= -- color:red; |subgroup_level_1_style= font-weight: bold; and |subgroup_style= color: green; , -- the style of group_1.1 will be style="color: red;" only, and the cascade is no longer performed for |subgroup_level_1_style and |subgroup_style. function h.mergeAttrs(...) local trim = mw.text.trim local s = '' for i=1, select('#', ...) do local v = trim(select(i, ...) or '') local str = string.match(v, '^%-%-+(.*)$') if str then s = trim(str..' '..s) break else s = trim(v..' '..s) end end if s == '' then s = nil end return s end function h.runHook(key, ...) if hooks[key] then hooks[key](...) end end ----------------------------------------------- return p 184ca1a8a54c8fded465a77c9198da564fe29c6c Module:Navbox/Hooks 828 263 280 2025-03-25T22:51:47Z Mr Pie 5 2833 Adding default set of pages Scribunto text/plain -- as of Module:Navbox version 1.2.2 local p = {} --------------------------------------------------- -- Runs before RANGER does args sanitizing -- `inputArgs` is the merged input arguments from the template (frame.args + frame:getParent().args) function p.onSanitizeArgsStart(inputArgs) end -- Runs after RANGER does args sanitizing -- `args` parameter is the sanitized arguments table with normalized keys (in lowercase underscore-case with canonical names) and normalized values. function p.onSanitizeArgsEnd(args, inputArgs) end -- Runs when RANGER loads config table (after onSanitizeArgsEnd and before onBuildTreeStart) -- `config` parameter is the default config table. -- `args` parameter is the sanitized arguments table (has not yet merged the DEFAUT_ARGS table). function p.onLoadConfig(config, args) end -- Runs before RANGER converts sanitized arguments table to structured data tree -- `args` parameter is the sanitized arguments table that has the DEFAUT_ARGS merged. function p.onBuildTreeStart(args) end -- Runs after RANGER converts sanitized arguments table to structured data tree -- `tree` parameter is the structured data. -- `args` parameter is the sanitized arguments table. function p.onBuildTreeEnd(tree, args) end --------------------------------------------------- return p 54e0c53295a318f2b18e70dc64e5b09867e03128 Module:Navbox/doc 828 264 281 2025-03-25T22:51:48Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki This module is used by [[Template:Navbox]]. 87d5c562165cd75b963e03aa428c80413bacff30 Module:Template link 828 265 282 2025-03-25T22:51:49Z Mr Pie 5 2833 Adding default set of pages Scribunto text/plain -- This code is adapted from Wikipedia -- For the original, please see: https://en.wikipedia.org/wiki/Module:Template_link_general -- This implements Template:Tlg local getArgs = require('Module:ArgsUtil').merge local p = {} -- Is a string non-empty? local function _ne(s) return s ~= nil and s ~= "" end local nw = mw.text.nowiki local function addTemplate(s) local i, _ = s:find(':', 1, true) if i == nil then return 'Template:' .. s end local ns = s:sub(1, i - 1) if ns == '' or mw.site.namespaces[ns] then return s else return 'Template:' .. s end end local function trimTemplate(s) local needle = 'template:' if s:sub(1, needle:len()):lower() == needle then return s:sub(needle:len() + 1) else return s end end local function linkTitle(args) if _ne(args.nolink) then return args[1] end local titleObj local titlePart = '[[' if args[1] then -- This handles :Page and other NS titleObj = mw.title.new(args[1], 'Template') else titleObj = mw.title.getCurrentTitle() end titlePart = titlePart .. (titleObj ~= nil and titleObj.fullText or addTemplate(args[1])) local textPart = args.alttext if not _ne(textPart) then if titleObj ~= nil then textPart = titleObj:inNamespace("Template") and args[1] or titleObj.fullText else -- redlink textPart = args[1] end end if _ne(args.subst) then -- HACK: the ns thing above is probably broken textPart = 'subst:' .. textPart end if _ne(args.brace) then textPart = nw('{{') .. textPart .. nw('}}') elseif _ne(args.braceinside) then textPart = nw('{') .. textPart .. nw('}') end titlePart = titlePart .. '|' .. textPart .. ']]' if _ne(args.braceinside) then titlePart = nw('{') .. titlePart .. nw('}') end return titlePart end function p.main(frame) local args = getArgs() return p._main(args) end function p._main(args) local bold = _ne(args.bold) or _ne(args.boldlink) or _ne(args.boldname) local italic = _ne(args.italic) or _ne(args.italics) local dontBrace = _ne(args.brace) or _ne(args.braceinside) local code = _ne(args.code) or _ne(args.tt) local show_result = _ne(args._show_result) local expand = _ne(args._expand) -- Build the link part local titlePart = linkTitle(args) if bold then titlePart = "'''" .. titlePart .. "'''" end if _ne(args.nowrapname) then titlePart = '<span class="nowrap">' .. titlePart .. '</span>' end -- Build the arguments local textPart = "" local textPartBuffer = "&#124;" local codeArguments = {} local codeArgumentsString = "" local i = 2 local j = 1 while args[i] do local val = args[i] if val ~= "" then if _ne(args.nowiki) then -- Unstrip nowiki tags first because calling nw on something that already contains nowiki tags will -- mangle the nowiki strip marker and result in literal UNIQ...QINU showing up val = nw(mw.text.unstripNoWiki(val)) end local k, v = string.match(val, "(.*)=(.*)") if not k then codeArguments[j] = val j = j + 1 else codeArguments[k] = v end codeArgumentsString = codeArgumentsString .. textPartBuffer .. val if italic then val = '<span style="font-style:italic;">' .. val .. '</span>' end textPart = textPart .. textPartBuffer .. val end i = i + 1 end -- final wrap local ret = titlePart .. textPart if not dontBrace then ret = nw('{{') .. ret .. nw('}}') end if _ne(args.a) then ret = nw('*') .. '&nbsp;' .. ret end if _ne(args.kbd) then ret = '<kbd>' .. ret .. '</kbd>' end if code then ret = '<code>' .. ret .. '</code>' elseif _ne(args.plaincode) then ret = '<code style="border:none;background:transparent;">' .. ret .. '</code>' end if _ne(args.nowrap) then ret = '<span class="nowrap">' .. ret .. '</span>' end --[[ Wrap as html?? local span = mw.html.create('span') span:wikitext(ret) --]] if _ne(args.debug) then ret = ret .. '\n<pre>' .. mw.text.encode(mw.dumpObject(args)) .. '</pre>' end if show_result then local result = mw.getCurrentFrame():expandTemplate{title = addTemplate(args[1]), args = codeArguments} ret = ret .. " → " .. result end if expand then local query = mw.text.encode('{{' .. addTemplate(args[1]) .. string.gsub(codeArgumentsString, textPartBuffer, "|") .. '}}') local url = mw.uri.fullUrl('special:ExpandTemplates', 'wpInput=' .. query) mw.log() ret = ret .. " [" .. tostring(url) .. "]" end return ret end return p 45d40a4bff9a1d0eb4274f56fb2f17849aa68728 Module:Template link/doc 828 266 283 2025-03-25T22:51:49Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{From Wikipedia|Module:Template link general}} 1a395265ccbd055518c1d14b52362cc148b89c81 MediaWiki:Loginprompt 8 267 284 2025-03-25T22:51:51Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{int:wikigg-fork-reclaim-note}} 7211f92f30ee2bd67bbd47b425d1645b2363edcf MediaWiki:Signupstart 8 268 285 2025-03-25T22:51:52Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{int:wikigg-fork-reclaim-note}} 7211f92f30ee2bd67bbd47b425d1645b2363edcf Technocide Wiki 0 269 286 2025-03-25T22:51:53Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki <!-- Hello and welcome to wiki.gg! This page is built via our IMProved Main Page (IMP) framework. If you are familiar with CSS grid areas, that's what you're defining here! But if you don't know any CSS that's ok! 👀 RULE 1: the same keyword represents the same section & can span multiple cells 👀 RULE 2: Each box in each layout must be a CONTIGUOUS RECTANGLE of any dimensions (most likely one of: 1x1, 1x2, 2x1, 2x2, 1x3, 3x1, 3x2, 2x3) 👀 RULE 3: This page defines LAYOUT ONLY. To edit the content, please use the links provided for you after saving/previewing your page. 👀 RULE 4: If you want to RENAME or ADD a box, (1) add a new section to the grid layout below (all three breakpoints!) and then (2) save or preview this page and then (3) click "Create this box" -->{{Main page |desktop= <!-- for WIDE SCREENS --> <!-- 👀 keep this at 3 columns, but you can otherwise rearrange as desired --> welcome welcome welcome about pages pages contribute contribute external <!-- end WIDE SCREEN layout --> |tablet= <!-- for TABLET SCREENS --> <!-- 👀 keep this at 2 columns, but you can otherwise rearrange as desired --> welcome welcome about pages contribute external <!-- end TABLET SCREEN layout --> |mobile= <!-- for MOBILE DEVICES --> <!-- 👀 keep this at 1 column, but you can otherwise rearrange as desired --> welcome about pages external contribute <!-- end MOBILE DEVICE layout --> }} {{#description2:Welcome to the {{SITENAME}}, a collaborative wiki resource that is open for anyone to edit!}} <!-- this is a short description of your wiki, which will appear in embeds in Google search results, Discord links, etc. --> c5d4351377806d884e84bc34774f85fd4a425e0a 287 286 2025-03-25T22:51:54Z Mr Pie 5 2833 Protected "[[Technocide Wiki]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki <!-- Hello and welcome to wiki.gg! This page is built via our IMProved Main Page (IMP) framework. If you are familiar with CSS grid areas, that's what you're defining here! But if you don't know any CSS that's ok! 👀 RULE 1: the same keyword represents the same section & can span multiple cells 👀 RULE 2: Each box in each layout must be a CONTIGUOUS RECTANGLE of any dimensions (most likely one of: 1x1, 1x2, 2x1, 2x2, 1x3, 3x1, 3x2, 2x3) 👀 RULE 3: This page defines LAYOUT ONLY. To edit the content, please use the links provided for you after saving/previewing your page. 👀 RULE 4: If you want to RENAME or ADD a box, (1) add a new section to the grid layout below (all three breakpoints!) and then (2) save or preview this page and then (3) click "Create this box" -->{{Main page |desktop= <!-- for WIDE SCREENS --> <!-- 👀 keep this at 3 columns, but you can otherwise rearrange as desired --> welcome welcome welcome about pages pages contribute contribute external <!-- end WIDE SCREEN layout --> |tablet= <!-- for TABLET SCREENS --> <!-- 👀 keep this at 2 columns, but you can otherwise rearrange as desired --> welcome welcome about pages contribute external <!-- end TABLET SCREEN layout --> |mobile= <!-- for MOBILE DEVICES --> <!-- 👀 keep this at 1 column, but you can otherwise rearrange as desired --> welcome about pages external contribute <!-- end MOBILE DEVICE layout --> }} {{#description2:Welcome to the {{SITENAME}}, a collaborative wiki resource that is open for anyone to edit!}} <!-- this is a short description of your wiki, which will appear in embeds in Google search results, Discord links, etc. --> c5d4351377806d884e84bc34774f85fd4a425e0a Technocide Wiki/about 0 270 288 2025-03-25T22:51:55Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = About Technocide }} This is an example main page. You can redesign it however you want, or you can keep the layout the same but change the contents (e.g. this part should talk about your game). Take a look at some other wiki.gg wikis for inspiration! <div style="text-align:right">[[Technocide|Read more...]]</div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 2467084f591c91cf9e3b793e2c5c21eb10719d64 289 288 2025-03-25T22:51:55Z Mr Pie 5 2833 Protected "[[Technocide Wiki/about]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki {{Main page box/start | title = About Technocide }} This is an example main page. You can redesign it however you want, or you can keep the layout the same but change the contents (e.g. this part should talk about your game). Take a look at some other wiki.gg wikis for inspiration! <div style="text-align:right">[[Technocide|Read more...]]</div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 2467084f591c91cf9e3b793e2c5c21eb10719d64 Technocide Wiki/contribute 0 271 290 2025-03-25T22:51:56Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = Contribute to the wiki }} {{SITENAME}} is a collaborative wiki resource that is open for anyone to edit. You don't need special permission beyond [[Special:UserLogin/signup|registering]] an account to edit most pages, and your contributions can grow the wiki and help other players. ; '''Adding content''' :* If you are unsure of what to do or how to create a page, search for a few articles on the same topic and see what they look like. You can always view the source code in a wiki and learn from what others have done. :* An edit doesn't have to be massive; if you feel you don't want to create whole articles, then just fixing spelling errors and broken links is enough. :* [[Special:UserLogin/signup|Register]] to edit and track your contributions. {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 43f95d1bb5b6adea940bacb4caa32aa74edf7690 291 290 2025-03-25T22:51:56Z Mr Pie 5 2833 Protected "[[Technocide Wiki/contribute]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki {{Main page box/start | title = Contribute to the wiki }} {{SITENAME}} is a collaborative wiki resource that is open for anyone to edit. You don't need special permission beyond [[Special:UserLogin/signup|registering]] an account to edit most pages, and your contributions can grow the wiki and help other players. ; '''Adding content''' :* If you are unsure of what to do or how to create a page, search for a few articles on the same topic and see what they look like. You can always view the source code in a wiki and learn from what others have done. :* An edit doesn't have to be massive; if you feel you don't want to create whole articles, then just fixing spelling errors and broken links is enough. :* [[Special:UserLogin/signup|Register]] to edit and track your contributions. {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 43f95d1bb5b6adea940bacb4caa32aa74edf7690 Technocide Wiki/external 0 272 292 2025-03-25T22:51:57Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = External links }} <div class="mp-links columns-2"> * {{MP link|Official site|link=https://wiki.gg}} * {{MP link|Discord|link=https://discord.gg/rTnST57tuW|image=Discord.svg|size=64x64px}} * {{MP link|Bluesky|link=https://bsky.app/profile/wiki.gg|image=Bluesky.svg|size=64x64px}} * {{MP link|indie.io|link=https://www.indie.io/|image=indie.io.svg|size=64x64px}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> bb8190c57bb4cc147764d1c10f218fe4d34e0a49 293 292 2025-03-25T22:51:58Z Mr Pie 5 2833 Protected "[[Technocide Wiki/external]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki {{Main page box/start | title = External links }} <div class="mp-links columns-2"> * {{MP link|Official site|link=https://wiki.gg}} * {{MP link|Discord|link=https://discord.gg/rTnST57tuW|image=Discord.svg|size=64x64px}} * {{MP link|Bluesky|link=https://bsky.app/profile/wiki.gg|image=Bluesky.svg|size=64x64px}} * {{MP link|indie.io|link=https://www.indie.io/|image=indie.io.svg|size=64x64px}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> bb8190c57bb4cc147764d1c10f218fe4d34e0a49 Technocide Wiki/pages 0 273 294 2025-03-25T22:51:58Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = Useful wiki pages | class = centered-content }} <div class="mp-links columns-2"> * {{MP link|Important page here|image=Wiki.gg logo-pink.svg|size=92px}} * {{MP link|Random page|link=Special:Random}} * {{MP link|Example character|link=Example character|image=Example_character_image.png|size=92px}} * {{MP link|Example character infobox|link=Template:Example character infobox|image=Example_character_image.png|size=92px}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 827f14b4cd3d346ca427f95e9574fc23c4874206 295 294 2025-03-25T22:51:59Z Mr Pie 5 2833 Protected "[[Technocide Wiki/pages]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki {{Main page box/start | title = Useful wiki pages | class = centered-content }} <div class="mp-links columns-2"> * {{MP link|Important page here|image=Wiki.gg logo-pink.svg|size=92px}} * {{MP link|Random page|link=Special:Random}} * {{MP link|Example character|link=Example character|image=Example_character_image.png|size=92px}} * {{MP link|Example character infobox|link=Template:Example character infobox|image=Example_character_image.png|size=92px}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 827f14b4cd3d346ca427f95e9574fc23c4874206 Technocide Wiki/welcome 0 274 296 2025-03-25T22:51:59Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Main page box/start | title = Welcome to the {{SITENAME}}! }} We are currently maintaining [[Special:AllPages|{{NUMBEROFARTICLES}} articles]]. Please feel free to contribute by creating new articles or expanding existing ones. {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 96df981ef23fca9434d1586228cab8a51e0fdc0a 297 296 2025-03-25T22:52:00Z Mr Pie 5 2833 Protected "[[Technocide Wiki/welcome]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki {{Main page box/start | title = Welcome to the {{SITENAME}}! }} We are currently maintaining [[Special:AllPages|{{NUMBEROFARTICLES}} articles]]. Please feel free to contribute by creating new articles or expanding existing ones. {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 96df981ef23fca9434d1586228cab8a51e0fdc0a Example character 0 275 298 2025-03-25T22:52:01Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki {{Example character infobox |title=Dragon |image=Example character image.png |Region=Shurima |Element=Fire |Attack=51 |HP=85 |Armor=34 |Attack Speed=78 }} Please note, this is NOT content related to {{SITENAME}}. It is an example page for the demonstration of [[support:DRUID infoboxes|DRUID infoboxes]]. Please delete this page at your earliest convenience! To edit how the infobox works, please see {{tl|Example character infobox}}. == About == The '''Example Character''' is a very cool character found in the Default Loadout Wiki. It is a dragon that can camouflage itself as a flower due to inventive and scientific reasons, and not because the artist is bad at drawing dragons. == Combat == The Example Character has several attacks, including: * Disguise Self As Flower * Flame Breath * Sneak Attack * Fireball * Dawizard == Dragon Riding == If the player tames the Example Character, they can perform several Dragon Riding stunts. See [[Dragon Riding]] for more information. == Levels == Example Character can be found in the following levels: * [[Introduction]] * [[Level 1]] * [[Level 3]] * [[Level 5]] * [[Bonus Content 6]] [[Category:Characters]] 5feed3ead005cb5ca4b2ecf1f3745925d2b8b41d Main Page 0 276 299 2025-03-25T22:52:02Z Mr Pie 5 2833 Adding default set of pages wikitext text/x-wiki #redirect [[Technocide Wiki]] 6f677e5dac68f43415806bd856df72e090bb954d 300 299 2025-03-25T22:52:03Z Mr Pie 5 2833 Protected "[[Main Page]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite)) wikitext text/x-wiki #redirect [[Technocide Wiki]] 6f677e5dac68f43415806bd856df72e090bb954d Example character 0 275 301 298 2025-03-26T06:15:51Z Tokepoke 586382 Test edit of example character wikitext text/x-wiki {{Example character infobox |title=Dragon |image=Example character image.png |Region=Shurima |Element=Fire |Attack=51 |HP=85 |Armor=34 |Attack Speed=78 }} Please note, this is NOT content related to {{SITENAME}}. It is an example page for the demonstration of [[support:DRUID infoboxes|DRUID infoboxes]]. Please delete this page at your earliest convenience! To edit how the infobox works, please see {{tl|Example character infobox}}. This is a test edit. == About == The '''Example Character''' is a very cool character found in the Default Loadout Wiki. It is a dragon that can camouflage itself as a flower due to inventive and scientific reasons, and not because the artist is bad at drawing dragons. == Combat == The Example Character has several attacks, including: * Disguise Self As Flower * Flame Breath * Sneak Attack * Fireball * Dawizard == Dragon Riding == If the player tames the Example Character, they can perform several Dragon Riding stunts. See [[Dragon Riding]] for more information. == Levels == Example Character can be found in the following levels: * [[Introduction]] * [[Level 1]] * [[Level 3]] * [[Level 5]] * [[Bonus Content 6]] [[Category:Characters]] 4b5f21a98fd389218dbd14b3a00eddc1e3a11f02 MediaWiki:Gadgets/ranger 8 33 302 34 2025-03-27T04:39:48Z RheingoldRiver 2743 Fixing RANGER deploy GadgetDefinition application/json { "settings": { "section": "", "package": false, "default": true, "hidden": true, "supportsUrlLoad": false }, "loadConditions": { "actions": [], "categories": [ "Pages with navboxes" ], "namespaces": [], "contentModels": [], "rights": [] }, "module": { "pages": [ "variables.css", "main.css", "custom.css" ], "dependencies": [], "type": "styles" } } 0e59fa9520b52214b9fedaecae9f41d86afd197f Weapons 0 277 303 2025-03-29T15:03:11Z Tokepoke 586382 The main weapons, supercharged variants and mods wikitext text/x-wiki Technocide features three main weapons to use in the game: Machine Gun, Railgun and Fusion Gun. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. == Machine Gun == Damage: 1 Rate of fire: 15 per second Damage per second: 15 A rapid fire weapon. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine Gun. == Railgun == Damage: 3 (3.75 vs medium and large enemies) Rate of fire: 2 x 1.67 per second Damage per second: 10 (12.5 vs medium and large enemies) Damage reduction per hit: 0.2 A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile stops. The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. == Fusion gun == Damage: 2.5 - 0.5 depending on distance Rate of fire: 6 x 1.67 per second Damage per second: 25 - 5 depending on distance A slow firing shotgun type weapon. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hp and the rest 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion Gun's own projectiles, effectively increasing the Fusion Gun's range. Thus using overkill it is possible to maximize the damage even against small targets and spreading it to other enemies behind. a7010a66ff42bd19bce4b9ce0aed03febd92bc13 304 303 2025-03-29T16:30:24Z Tokepoke 586382 Added super weapons (wip) wikitext text/x-wiki Technocide features three main weapons to use in the game: Machine Gun, Railgun and Fusion Gun. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. All weapons have recoil which pushes the player backwards. Recoil can be used to exceed the player's normal maximum speed when moving backwards. == Machine gun == Damage: 1 Rate of fire: 15 per second Damage per second: 15 A rapid fire weapon. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine gun. The Machine gun has a slight recoil noticeable only when not moving: it slowly and steadily pushes the Fighter backwards. When moving around, the recoil is reduced to unnoticeable levels. == Railgun == Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 2 Damage per volley: 6 (7.5 vs medium and large enemies) Rate of fire: 1.67 per second ( = 0.6 second cooldown) Damage per second: 10 (12.5 vs medium and large enemies) Damage reduction per hit: 0.2 A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. == Fusion gun == Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 1.67 per second ( = 0.6 second cooldown) Damage per second: 25 - 5 depending on distance A slow firing shotgun type weapon. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hp and the rest 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize the damage even against small targets and spreading it to other enemies behind. == Supercharge == Each main weapon can be supercharged given enough power. Power is collected in the form of Power Cells that are dropped from enemies when destroyed by one of the main weapons in Fighter mode. Each collected Power Cell fills the player's Power Meter by 0.5%. Additional Power Cells may drop if the enemy receives enough overkill with one of the main weapons. Power Cells are not dropped on kill or Overkill from Supercharged weapons, or equipment (exceptions: Mining Laser and Gun Drone). There must be enough power collected for at least a single shot or volley to be able to activate Supercharged mode. There is a brief transformation time between Fighter mode and Supercharged mode, where the player can't fire their main weapon at all, making timing of the transformation crucial. The player's movement speed is also slowed by 40% when in Supercharged mode. Once in Supercharged mode, the main weapon is swapped for a supercharged variant, which are immensely powerful, but shots are limited by the collected Power. == Gatling gun (Supercharged Machine gun) == Damage: 2.5 Rate of fire: 30 per second Damage per second: 75 Power per shot: 0.8% Power per second: 24% Damage per Power: 3.125 Activating supercharge while using the Machine gun creates the Gatling gun. When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. == Super Railgun (Supercharged Railgun) == Damage: 55 (68.75 vs medium and large enemies) Rate of fire: 1 per second Damage per second: 55 (68.75 vs medium and large enemies) Power per shot: 25% Power per second: 25% Damage per Power: 2.2 (2.75 vs medium and large enemies) Damage reduction per hit: 5 Minimum Damage: 5 Overkill modifier: -50% Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out everything behind it. The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. == Super Fusion gun (Supercharged Fusion gun) == Damage: 2.5 ~ 2 depending on distance Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 87.5 ~ 70 depending on distance Rate of fire: 0.8 per second ( = 1.25 second cooldown) Damage per second: 70 ~ 56 depending on distance Power per volley: 33% Power per second: 26.4% Damage per Power: ~2.65 The Super Fusion gun fires a massive volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). The Super Fusion gun is best used this way to essentially clear the screen of small enemies, and can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. 06dc5b54546922471cd126251017716442ae236c 305 304 2025-03-29T18:47:59Z Tokepoke 586382 controls and mixed weapons wikitext text/x-wiki Technocide features three main weapons to use in the game: Machine Gun, Railgun and Fusion Gun. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. All weapons have recoil which pushes the player backwards. Recoil can be used to exceed the player's normal maximum speed when moving backwards. === Controls === The main weapon is fired using a "Fire" button. * Defaults: ** Keyboard: Space ** Gamepad: RT (Xbox) / R2 (Playstation) Weapons can be swapped either with separate buttons assigned to each weapon, or cycled through with next/previous buttons. * Defaults: ** Keyboard: [S] = Fusion gun, [D] = Railgun, [F] = Machine gun ** Gamepad: RB (Xbox) / R1 (Playstation) = Cycle Previous Weapon, LB (Xbox) / L1 (Playstation) = Cycle Next Weapon == Machine gun == Damage: 1 Rate of fire: 15 shots per second Damage per second: 15 A rapid fire weapon. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine gun. The Machine gun has a slight recoil noticeable only when not moving: it slowly and steadily pushes the Fighter backwards. When moving around, the recoil is reduced to unnoticeable levels. == Railgun == Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 2 Damage per volley: 6 (7.5 vs medium and large enemies) Rate of fire: 1.67 shots per second ( = 0.6 second cooldown) Damage per second: 10 (12.5 vs medium and large enemies) Damage reduction per hit: 0.2 A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. == Fusion gun == Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 1.67 volleys per second ( = 0.6 second cooldown) Damage per second: 25 - 5 depending on distance A slow firing shotgun type weapon. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hp and the rest 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize the damage even against small targets and spreading it to other enemies behind. == Supercharge == Each main weapon can be supercharged given enough power. Power is collected in the form of Power Cells that are dropped from enemies when destroyed by one of the main weapons in Fighter mode. Each collected Power Cell fills the player's Power Meter by 0.5%. Additional Power Cells may drop if the enemy receives enough overkill with one of the main weapons. Power Cells are not dropped on kill or Overkill from Supercharged weapons, or equipment (exceptions: Mining Laser and Gun Drone). There must be enough power collected for at least a single shot or volley to be able to activate Supercharged mode. There is a brief transformation time between Fighter mode and Supercharged mode, where the player can't fire their main weapon at all, making timing of the transformation crucial. The player's movement speed is also slowed by 40% when in Supercharged mode. Once in Supercharged mode, the main weapon is swapped for a supercharged variant, which are immensely powerful, but shots are limited by the collected Power. === Controls === Supercharge can be controlled in one of two ways: hold or toggle mode. In hold mode, Supercharge is active for as long as the button is held. In toggle mode, Supercharge is activated by pressing the button, and deactivated by pressing the button again. * Defaults: ** Keyboard: [A] (toggle) ** Gamepad: LT (Xbox) / L2 (Playstation) (hold) == Gatling gun (Supercharged Machine gun) == Damage: 2.5 Rate of fire: 30 shots per second Damage per second: 75 Power per shot: 0.8% Power per second: 24% Damage from full Power: 312.5 Activating supercharge while using the Machine gun creates the Gatling gun. When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. == Super Railgun (Supercharged Railgun) == Damage: 55 (68.75 vs medium and large enemies) Rate of fire: 1 shot per second Damage per second: 55 (68.75 vs medium and large enemies) Power per shot: 25% Power per second: 25% Damage from full Power: 220 (275 vs medium and large enemies) Damage reduction per hit: 5 Minimum Damage: 5 Overkill modifier: -50% Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out everything behind it. The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. == Super Fusion gun (Supercharged Fusion gun) == Damage: 2.5 ~ 2 depending on distance Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 87.5 ~ 70 depending on distance Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 70 ~ 56 depending on distance Power per volley: 33% Power per second: 26.4% Damage from full Power: ~265 to ~212 depending on distance The Super Fusion gun fires a massive volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). The Super Fusion gun is best used this way to essentially clear the screen of small enemies, and can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. The Super Fusion gun has massive recoil. == Mixed Weapons == Mixed weapons are introduced in the Mad Scientist Boss, after which they are available to use freely. In Expert modes mixed weapons are enabled from the beginning. In the default Fighter mode, weapons are used in pairs. Mixed weapons allows for switching to mismatched pairs. Both weapons' fire rate is reduced to half of their respective fire rates and offers no clear benefit in Fighter mode. However, once Supercharge is activated with a mismatched pair, a new Super Weapon is created combining the advantages of both weapons. === Controls === Weapon mixing can be done in one of two different ways: either pressing down two weapon buttons simultaneously, or using separate buttons to cycle either the left or right weapon separately. The difference between cycling the left or right weapon is how it affects the normal cycle weapons button. Normal cycle weapons switches to a matched pair that is the next or previous weapon from the left weapon. So using cycle left buttons affects normal the following normal weapon cycling while cycle right does not. * Defaults: ** Keyboard: Press two weapon buttons (S,D,F) simultaneously ** Gamepad: D-pad left and right to Cycle Right Weapon == Gatling Railgun (Supercharged Machine gun + Railgun) == Damage: 3 (3.75 vs medium and large enemies) Rate of fire: 15 shots per second Damage per second: 45 (56.25 vs medium and large enemies) Power per shot: 1.6% Power per second: 24% Damage from full Power: 187.5 (234.375 vs medium and large enemies) Damage reduction per hit: 0.2 The Gatling Railgun is possibly the most versatile of the Super Weapons: it practically adds the piercing function to the already versatile Gatling gun. It fires projectiles functionally identical to the basic railgun, but at a high rate of fire. The trade off is the lowest single target damage of all the Super Weapons, but this statistic is deceptive as hitting only two enemies already nearly doubles its total damage. The recoil of the Gatling Railgun is mild compared to the other Super Weapons and easily manageable. It is still impossible to move forward while firing but the backwards force can be almost entirely canceled out by trying to move forward. == Gatling Fusion gun (Supercharged Machine gun + Fusion gun) == Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 7.5 volleys per second Damage per second: 112.5 - 22.5 depending on distance Power per volley: 4% Power per second: 30% Damage from full Power: 375 - 75 depending on distance The Gatling Fusion gun has the highest damage potential and damage per second out of all the Super Weapons (not counting the secret ultimate weapon). However using that damage potential requires the player to be on top of, or near the target enemies, and an extended period of time for continuous fire. This can prove challenging with the Supercharged mode's slow movement speed and high recoil of the Gatling Fusion gun. == Fusion Railgun (Supercharged Fusion gun + Railgun) == Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 105 (131.25 vs medium and large enemies) Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 84 (105 vs medium and large enemies) Power per volley: 50% Power per second: 40% Damage from full Power: 210 (262.5 vs medium and large enemies) Damage reduction per hit: 0.2 The BFG of Technocide. Functionally identical to the Super Fusion gun but with each pellet replaced with a basic railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. == (Secret) The Ultimate Weapon == Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 6 Damage per volley: 18 (22.5 vs medium and large enemies) Rate of fire: 7.5 volleys per second Damage per second: 135 (168.75 vs medium and large enemies) Power per volley: 7% Power per second: 52.5% Damage from full Power: ~257 (~321 vs medium and large enemies) Damage reduction per hit: 0.2 The Ultimate Weapon combines all three weapons into a ridiculously overpowered gun that depletes Power alarmingly fast. Functionally identical to the Gatling Fusion gun but with each pellet replaced with a basic railgun projectile. Essentially rapid-fire rail-shotgun. The Ultimate weapon can only be activated when at 100% Power. It is activated either by pressing all three separate weapon buttons simultaneously (Keyboard default: S,D,F), or by pressing Cycle Next Weapon and Cycle Previous Weapon simultaneously (Gamepad default: RB+LB (Xbox), R1+L1(Playstation)). Technocide offers no hint on it's existence until the player activates it for the first time on accident, after which they get a brief reaction from the head scientist and a one-time instruction screen after the level. e8339b08c1c9ee33b7f066d5fb0bc6c56951ef8f 306 305 2025-03-29T19:29:02Z Tokepoke 586382 Super weapon mods and sub heading organizing wikitext text/x-wiki Technocide features three main weapons to use in the game: Machine Gun, Railgun and Fusion Gun. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. All weapons have recoil which pushes the player backwards. Recoil can be used to exceed the player's normal maximum speed when moving backwards. === Controls === The main weapon is fired using a "Fire" button. * Defaults: ** Keyboard: Space ** Gamepad: RT (Xbox) / R2 (Playstation) Weapons can be swapped either with separate buttons assigned to each weapon, or cycled through with next/previous buttons. * Defaults: ** Keyboard: [S] = Fusion gun, [D] = Railgun, [F] = Machine gun ** Gamepad: RB (Xbox) / R1 (Playstation) = Cycle Previous Weapon, LB (Xbox) / L1 (Playstation) = Cycle Next Weapon === Machine gun === Damage: 1 Rate of fire: 15 shots per second Damage per second: 15 A rapid fire weapon. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine gun. The Machine gun has a slight recoil noticeable only when not moving: it slowly and steadily pushes the Fighter backwards. When moving around, the recoil is reduced to unnoticeable levels. === Railgun === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 2 Damage per volley: 6 (7.5 vs medium and large enemies) Rate of fire: 1.67 shots per second ( = 0.6 second cooldown) Damage per second: 10 (12.5 vs medium and large enemies) Damage reduction per hit: 0.2 A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. === Fusion gun === Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 1.67 volleys per second ( = 0.6 second cooldown) Damage per second: 25 - 5 depending on distance A slow firing shotgun type weapon. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hp and the rest 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize the damage even against small targets and spreading it to other enemies behind. == Supercharge == Each main weapon can be supercharged given enough power. Power is collected in the form of Power Cells that are dropped from enemies when destroyed by one of the main weapons in Fighter mode. Each collected Power Cell fills the player's Power Meter by 0.5%. Additional Power Cells may drop if the enemy receives enough overkill with one of the main weapons. Power Cells are not dropped on kill or Overkill from Supercharged weapons, or equipment (exceptions: Mining Laser and Gun Drone). There must be enough power collected for at least a single shot or volley to be able to activate Supercharged mode. There is a brief transformation time between Fighter mode and Supercharged mode, where the player can't fire their main weapon at all, making timing of the transformation crucial. The player's movement speed is also slowed by 40% when in Supercharged mode. Once in Supercharged mode, the main weapon is swapped for a supercharged variant, which are immensely powerful, but shots are limited by the collected Power. === Controls === Supercharge can be controlled in one of two ways: hold or toggle mode. In hold mode, Supercharge is active for as long as the button is held. In toggle mode, Supercharge is activated by pressing the button, and deactivated by pressing the button again. * Defaults: ** Keyboard: [A] (toggle) ** Gamepad: LT (Xbox) / L2 (Playstation) (hold) === Gatling gun (Supercharged Machine gun) === Damage: 2.5 Rate of fire: 30 shots per second Damage per second: 75 Power per shot: 0.8% Power per second: 24% Damage from full Power: 312.5 Activating supercharge while using the Machine gun creates the Gatling gun. When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. === Super Railgun (Supercharged Railgun) === Damage: 55 (68.75 vs medium and large enemies) Rate of fire: 1 shot per second Damage per second: 55 (68.75 vs medium and large enemies) Power per shot: 25% Power per second: 25% Damage from full Power: 220 (275 vs medium and large enemies) Damage reduction per hit: 5 Minimum Damage: 5 Overkill modifier: -50% Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out everything behind it. The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. === Super Fusion gun (Supercharged Fusion gun) === Damage: 2.5 ~ 2 depending on distance Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 87.5 ~ 70 depending on distance Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 70 ~ 56 depending on distance Power per volley: 33% Power per second: 26.4% Damage from full Power: ~265 to ~212 depending on distance The Super Fusion gun fires a massive volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). The Super Fusion gun is best used this way to essentially clear the screen of small enemies, and can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. The Super Fusion gun has massive recoil. == Mixed Weapons == Mixed weapons are introduced in the Mad Scientist Boss, after which they are available to use freely. In Expert modes mixed weapons are enabled from the beginning. In the default Fighter mode, weapons are used in pairs. Mixed weapons allows for switching to mismatched pairs. Both weapons' fire rate is reduced to half of their respective fire rates and offers no clear benefit in Fighter mode. However, once Supercharge is activated with a mismatched pair, a new Super Weapon is created combining the advantages of both weapons. === Controls === Weapon mixing can be done in one of two different ways: either pressing down two weapon buttons simultaneously, or using separate buttons to cycle either the left or right weapon separately. The difference between cycling the left or right weapon is how it affects the normal cycle weapons button. Normal cycle weapons switches to a matched pair that is the next or previous weapon from the left weapon. So using cycle left buttons affects normal the following normal weapon cycling while cycle right does not. * Defaults: ** Keyboard: Press two weapon buttons (S,D,F) simultaneously ** Gamepad: D-pad left and right to Cycle Right Weapon === Gatling Railgun (Supercharged Machine gun + Railgun) === Damage: 3 (3.75 vs medium and large enemies) Rate of fire: 15 shots per second Damage per second: 45 (56.25 vs medium and large enemies) Power per shot: 1.6% Power per second: 24% Damage from full Power: 187.5 (234.375 vs medium and large enemies) Damage reduction per hit: 0.2 The Gatling Railgun is possibly the most versatile of the Super Weapons: it practically adds the piercing function to the already versatile Gatling gun. It fires projectiles functionally identical to the basic railgun, but at a high rate of fire. The trade off is the lowest single target damage of all the Super Weapons, but this statistic is deceptive as hitting only two enemies already nearly doubles its total damage. The recoil of the Gatling Railgun is mild compared to the other Super Weapons and easily manageable. It is still impossible to move forward while firing but the backwards force can be almost entirely canceled out by trying to move forward. === Gatling Fusion gun (Supercharged Machine gun + Fusion gun) === Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 7.5 volleys per second Damage per second: 112.5 - 22.5 depending on distance Power per volley: 4% Power per second: 30% Damage from full Power: 375 - 75 depending on distance The Gatling Fusion gun has the highest damage potential and damage per second out of all the Super Weapons (not counting the secret ultimate weapon). However using that damage potential requires the player to be on top of, or near the target enemies, and an extended period of time for continuous fire. This can prove challenging with the Supercharged mode's slow movement speed and high recoil of the Gatling Fusion gun. === Fusion Railgun (Supercharged Fusion gun + Railgun) === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 105 (131.25 vs medium and large enemies) Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 84 (105 vs medium and large enemies) Power per volley: 50% Power per second: 40% Damage from full Power: 210 (262.5 vs medium and large enemies) Damage reduction per hit: 0.2 The BFG of Technocide. Functionally identical to the Super Fusion gun but with each pellet replaced with a basic railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. === (Secret) The Ultimate Weapon === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 6 Damage per volley: 18 (22.5 vs medium and large enemies) Rate of fire: 7.5 volleys per second Damage per second: 135 (168.75 vs medium and large enemies) Power per volley: 7% Power per second: 52.5% Damage from full Power: ~257 (~321 vs medium and large enemies) Damage reduction per hit: 0.2 The Ultimate Weapon combines all three weapons into a ridiculously overpowered gun that depletes Power alarmingly fast. Functionally identical to the Gatling Fusion gun but with each pellet replaced with a basic railgun projectile. Essentially rapid-fire rail-shotgun. The Ultimate weapon can only be activated when at 100% Power. It is activated either by pressing all three separate weapon buttons simultaneously (Keyboard default: S,D,F), or by pressing Cycle Next Weapon and Cycle Previous Weapon simultaneously (Gamepad default: RB+LB (Xbox), R1+L1(Playstation)). Technocide offers no hint on it's existence until the player activates it for the first time on accident, after which they get a brief reaction from the head scientist and a one-time instruction screen after the level. == Mods == There are three Super Weapon Mods in Technocide. Each affects one of the main weapons' Supercharged variant and all mixed weapons derived from that main weapon. All mods affect The Ultimate Weapon. A Super Weapon Mod can be earned by completing the hard level in the Asteroid Field, marked as "Reward: Special". Once completed, the player may choose one of the mods they do not already own. It is possible to acquire two mods if one mod was carried over from the previous run instead of an equipment. The mods function simultaneously when the appropriate mixed Super Weapon is used. === Controls === Mods are not simple upgrades and can have trade-offs. A mod can be toggled on/off at will if one wishes to use the unmodded version of the weapon. * Default: ** Keyboard: [G] ** Gamepad: D-pad up === Spread Mod === The Spread Mod affects the Gatling Gun, Gatling Railgun, Gatling Fusion gun and The Ultimate Weapon. It changes the firing pattern to a "double helix" wave pattern. For the Gatling Gun and Gatling Railgun, this means a near doubling of damage at the cost of accuracy, but no extra power cost. It is not exactly double because when the waves cross in the center, a single shot is fired instead of two. For the Gatling Fusion gun and The Ultimate Weapon, every other volley is a double volley fired to both sides, adding only 50% additional shots. This is very beneficial for the Ultimate weapon as most of the screen can be hit with railgun shots with a short 2 round burst for a mere 14% Power cost. === Smart Shot === The Smart Shot affects the Super Railgun, Gatling Railgun, Fusion Railgun and The Ultimate Weapon. After hitting an enemy, it makes the railgun shot change direction towards another enemy. The downside is that damage is reduced much more for each hit and it does not have the same damage potential for hitting lined up enemies. The upside is that enemies do not need to be lined up to hit multiple of them at the same time. It is inadvisable to use the Smart Shot with the Space Compactor equipment, as the unmodded railguns hit bunched up enemies much harded. === Bomb Mod === The Bomb mod affects the Super Fusion gun, Gatling Fusion gun, Fusion Railgun and The Ultimate Weapon. The Bomb Mod changes these weapons so that instead of firing a volley of shots, it launches a bomb, which upon detonation, releases double the amount of shots compared to the unmodded volley in all directions. How the bomb detonates depends whether it is a Gatling type Super Weapon or not. For the Super Fusion gun and Fusion Railgun, the bomb detonates when the Fire button is released. This makes it possible for a skilled player to aim and detonate the bomb on top or "inside" an enemy, instantly dealing its full damage to it and possibly releasing extreme amounts of shrapnel from Overkill. For the Gatling Fusion gun and The Ultimate Weapon, bombs detonate on contact with enemies, or when reaching the top of the screen. These bombs never detonate inside enemies when fired from farther away but it is possible when getting on top of the enemy yourself. The bomb mod also reduces recoil by a considerable amount, as most of the explosive force of the weapon is contained within the launched bomb. a9e667f0d80a57b1f486a520ba023ff0a6342537 333 306 2025-04-13T08:49:15Z Tokepoke 586382 test linking to another page wikitext text/x-wiki Technocide features three main weapons to use in the game: Machine Gun, Railgun and Fusion Gun. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. All weapons have recoil which pushes the player backwards. Recoil can be used to exceed the player's normal maximum speed when moving backwards. === Controls === The main weapon is fired using a "Fire" button. * Defaults: ** Keyboard: Space ** Gamepad: RT (Xbox) / R2 (Playstation) Weapons can be swapped either with separate buttons assigned to each weapon, or cycled through with next/previous buttons. * Defaults: ** Keyboard: [S] = Fusion gun, [D] = Railgun, [F] = Machine gun ** Gamepad: RB (Xbox) / R1 (Playstation) = Cycle Previous Weapon, LB (Xbox) / L1 (Playstation) = Cycle Next Weapon === [[Machine gun]] === === Railgun === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 2 Damage per volley: 6 (7.5 vs medium and large enemies) Rate of fire: 1.67 shots per second ( = 0.6 second cooldown) Damage per second: 10 (12.5 vs medium and large enemies) Damage reduction per hit: 0.2 A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. === Fusion gun === Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 1.67 volleys per second ( = 0.6 second cooldown) Damage per second: 25 - 5 depending on distance A slow firing shotgun type weapon. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hp and the rest 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize the damage even against small targets and spreading it to other enemies behind. == Supercharge == Each main weapon can be supercharged given enough power. Power is collected in the form of Power Cells that are dropped from enemies when destroyed by one of the main weapons in Fighter mode. Each collected Power Cell fills the player's Power Meter by 0.5%. Additional Power Cells may drop if the enemy receives enough overkill with one of the main weapons. Power Cells are not dropped on kill or Overkill from Supercharged weapons, or equipment (exceptions: Mining Laser and Gun Drone). There must be enough power collected for at least a single shot or volley to be able to activate Supercharged mode. There is a brief transformation time between Fighter mode and Supercharged mode, where the player can't fire their main weapon at all, making timing of the transformation crucial. The player's movement speed is also slowed by 40% when in Supercharged mode. Once in Supercharged mode, the main weapon is swapped for a supercharged variant, which are immensely powerful, but shots are limited by the collected Power. === Controls === Supercharge can be controlled in one of two ways: hold or toggle mode. In hold mode, Supercharge is active for as long as the button is held. In toggle mode, Supercharge is activated by pressing the button, and deactivated by pressing the button again. * Defaults: ** Keyboard: [A] (toggle) ** Gamepad: LT (Xbox) / L2 (Playstation) (hold) === Gatling gun (Supercharged Machine gun) === Damage: 2.5 Rate of fire: 30 shots per second Damage per second: 75 Power per shot: 0.8% Power per second: 24% Damage from full Power: 312.5 Activating supercharge while using the Machine gun creates the Gatling gun. When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. === Super Railgun (Supercharged Railgun) === Damage: 55 (68.75 vs medium and large enemies) Rate of fire: 1 shot per second Damage per second: 55 (68.75 vs medium and large enemies) Power per shot: 25% Power per second: 25% Damage from full Power: 220 (275 vs medium and large enemies) Damage reduction per hit: 5 Minimum Damage: 5 Overkill modifier: -50% Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out everything behind it. The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. === Super Fusion gun (Supercharged Fusion gun) === Damage: 2.5 ~ 2 depending on distance Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 87.5 ~ 70 depending on distance Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 70 ~ 56 depending on distance Power per volley: 33% Power per second: 26.4% Damage from full Power: ~265 to ~212 depending on distance The Super Fusion gun fires a massive volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). The Super Fusion gun is best used this way to essentially clear the screen of small enemies, and can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. The Super Fusion gun has massive recoil. == Mixed Weapons == Mixed weapons are introduced in the Mad Scientist Boss, after which they are available to use freely. In Expert modes mixed weapons are enabled from the beginning. In the default Fighter mode, weapons are used in pairs. Mixed weapons allows for switching to mismatched pairs. Both weapons' fire rate is reduced to half of their respective fire rates and offers no clear benefit in Fighter mode. However, once Supercharge is activated with a mismatched pair, a new Super Weapon is created combining the advantages of both weapons. === Controls === Weapon mixing can be done in one of two different ways: either pressing down two weapon buttons simultaneously, or using separate buttons to cycle either the left or right weapon separately. The difference between cycling the left or right weapon is how it affects the normal cycle weapons button. Normal cycle weapons switches to a matched pair that is the next or previous weapon from the left weapon. So using cycle left buttons affects normal the following normal weapon cycling while cycle right does not. * Defaults: ** Keyboard: Press two weapon buttons (S,D,F) simultaneously ** Gamepad: D-pad left and right to Cycle Right Weapon === Gatling Railgun (Supercharged Machine gun + Railgun) === Damage: 3 (3.75 vs medium and large enemies) Rate of fire: 15 shots per second Damage per second: 45 (56.25 vs medium and large enemies) Power per shot: 1.6% Power per second: 24% Damage from full Power: 187.5 (234.375 vs medium and large enemies) Damage reduction per hit: 0.2 The Gatling Railgun is possibly the most versatile of the Super Weapons: it practically adds the piercing function to the already versatile Gatling gun. It fires projectiles functionally identical to the basic railgun, but at a high rate of fire. The trade off is the lowest single target damage of all the Super Weapons, but this statistic is deceptive as hitting only two enemies already nearly doubles its total damage. The recoil of the Gatling Railgun is mild compared to the other Super Weapons and easily manageable. It is still impossible to move forward while firing but the backwards force can be almost entirely canceled out by trying to move forward. === Gatling Fusion gun (Supercharged Machine gun + Fusion gun) === Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 7.5 volleys per second Damage per second: 112.5 - 22.5 depending on distance Power per volley: 4% Power per second: 30% Damage from full Power: 375 - 75 depending on distance The Gatling Fusion gun has the highest damage potential and damage per second out of all the Super Weapons (not counting the secret ultimate weapon). However using that damage potential requires the player to be on top of, or near the target enemies, and an extended period of time for continuous fire. This can prove challenging with the Supercharged mode's slow movement speed and high recoil of the Gatling Fusion gun. === Fusion Railgun (Supercharged Fusion gun + Railgun) === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 105 (131.25 vs medium and large enemies) Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 84 (105 vs medium and large enemies) Power per volley: 50% Power per second: 40% Damage from full Power: 210 (262.5 vs medium and large enemies) Damage reduction per hit: 0.2 The BFG of Technocide. Functionally identical to the Super Fusion gun but with each pellet replaced with a basic railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. === (Secret) The Ultimate Weapon === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 6 Damage per volley: 18 (22.5 vs medium and large enemies) Rate of fire: 7.5 volleys per second Damage per second: 135 (168.75 vs medium and large enemies) Power per volley: 7% Power per second: 52.5% Damage from full Power: ~257 (~321 vs medium and large enemies) Damage reduction per hit: 0.2 The Ultimate Weapon combines all three weapons into a ridiculously overpowered gun that depletes Power alarmingly fast. Functionally identical to the Gatling Fusion gun but with each pellet replaced with a basic railgun projectile. Essentially rapid-fire rail-shotgun. The Ultimate weapon can only be activated when at 100% Power. It is activated either by pressing all three separate weapon buttons simultaneously (Keyboard default: S,D,F), or by pressing Cycle Next Weapon and Cycle Previous Weapon simultaneously (Gamepad default: RB+LB (Xbox), R1+L1(Playstation)). Technocide offers no hint on it's existence until the player activates it for the first time on accident, after which they get a brief reaction from the head scientist and a one-time instruction screen after the level. == Mods == There are three Super Weapon Mods in Technocide. Each affects one of the main weapons' Supercharged variant and all mixed weapons derived from that main weapon. All mods affect The Ultimate Weapon. A Super Weapon Mod can be earned by completing the hard level in the Asteroid Field, marked as "Reward: Special". Once completed, the player may choose one of the mods they do not already own. It is possible to acquire two mods if one mod was carried over from the previous run instead of an equipment. The mods function simultaneously when the appropriate mixed Super Weapon is used. === Controls === Mods are not simple upgrades and can have trade-offs. A mod can be toggled on/off at will if one wishes to use the unmodded version of the weapon. * Default: ** Keyboard: [G] ** Gamepad: D-pad up === Spread Mod === The Spread Mod affects the Gatling Gun, Gatling Railgun, Gatling Fusion gun and The Ultimate Weapon. It changes the firing pattern to a "double helix" wave pattern. For the Gatling Gun and Gatling Railgun, this means a near doubling of damage at the cost of accuracy, but no extra power cost. It is not exactly double because when the waves cross in the center, a single shot is fired instead of two. For the Gatling Fusion gun and The Ultimate Weapon, every other volley is a double volley fired to both sides, adding only 50% additional shots. This is very beneficial for the Ultimate weapon as most of the screen can be hit with railgun shots with a short 2 round burst for a mere 14% Power cost. === Smart Shot === The Smart Shot affects the Super Railgun, Gatling Railgun, Fusion Railgun and The Ultimate Weapon. After hitting an enemy, it makes the railgun shot change direction towards another enemy. The downside is that damage is reduced much more for each hit and it does not have the same damage potential for hitting lined up enemies. The upside is that enemies do not need to be lined up to hit multiple of them at the same time. It is inadvisable to use the Smart Shot with the Space Compactor equipment, as the unmodded railguns hit bunched up enemies much harded. === Bomb Mod === The Bomb mod affects the Super Fusion gun, Gatling Fusion gun, Fusion Railgun and The Ultimate Weapon. The Bomb Mod changes these weapons so that instead of firing a volley of shots, it launches a bomb, which upon detonation, releases double the amount of shots compared to the unmodded volley in all directions. How the bomb detonates depends whether it is a Gatling type Super Weapon or not. For the Super Fusion gun and Fusion Railgun, the bomb detonates when the Fire button is released. This makes it possible for a skilled player to aim and detonate the bomb on top or "inside" an enemy, instantly dealing its full damage to it and possibly releasing extreme amounts of shrapnel from Overkill. For the Gatling Fusion gun and The Ultimate Weapon, bombs detonate on contact with enemies, or when reaching the top of the screen. These bombs never detonate inside enemies when fired from farther away but it is possible when getting on top of the enemy yourself. The bomb mod also reduces recoil by a considerable amount, as most of the explosive force of the weapon is contained within the launched bomb. 72f023a4aa58bc1e70f8f4d9a1ee9fd6c986480d 342 333 2025-04-14T17:19:04Z Tokepoke 586382 Temporary links to help in splitting content into separate pages wikitext text/x-wiki Technocide features three main weapons to use in the game: Machine Gun, Railgun and Fusion Gun. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. All weapons have recoil which pushes the player backwards. Recoil can be used to exceed the player's normal maximum speed when moving backwards. === Controls === The main weapon is fired using a "Fire" button. * Defaults: ** Keyboard: Space ** Gamepad: RT (Xbox) / R2 (Playstation) Weapons can be swapped either with separate buttons assigned to each weapon, or cycled through with next/previous buttons. * Defaults: ** Keyboard: [S] = Fusion gun, [D] = Railgun, [F] = Machine gun ** Gamepad: RB (Xbox) / R1 (Playstation) = Cycle Previous Weapon, LB (Xbox) / L1 (Playstation) = Cycle Next Weapon === [[Machine gun]] === === [[Railgun]] === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 2 Damage per volley: 6 (7.5 vs medium and large enemies) Rate of fire: 1.67 shots per second ( = 0.6 second cooldown) Damage per second: 10 (12.5 vs medium and large enemies) Damage reduction per hit: 0.2 A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. === [[Fusion gun]] === Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 1.67 volleys per second ( = 0.6 second cooldown) Damage per second: 25 - 5 depending on distance A slow firing shotgun type weapon. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hp and the rest 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize the damage even against small targets and spreading it to other enemies behind. == Supercharge == Each main weapon can be supercharged given enough power. Power is collected in the form of Power Cells that are dropped from enemies when destroyed by one of the main weapons in Fighter mode. Each collected Power Cell fills the player's Power Meter by 0.5%. Additional Power Cells may drop if the enemy receives enough overkill with one of the main weapons. Power Cells are not dropped on kill or Overkill from Supercharged weapons, or equipment (exceptions: Mining Laser and Gun Drone). There must be enough power collected for at least a single shot or volley to be able to activate Supercharged mode. There is a brief transformation time between Fighter mode and Supercharged mode, where the player can't fire their main weapon at all, making timing of the transformation crucial. The player's movement speed is also slowed by 40% when in Supercharged mode. Once in Supercharged mode, the main weapon is swapped for a supercharged variant, which are immensely powerful, but shots are limited by the collected Power. === Controls === Supercharge can be controlled in one of two ways: hold or toggle mode. In hold mode, Supercharge is active for as long as the button is held. In toggle mode, Supercharge is activated by pressing the button, and deactivated by pressing the button again. * Defaults: ** Keyboard: [A] (toggle) ** Gamepad: LT (Xbox) / L2 (Playstation) (hold) === [[Gatling gun]] (Supercharged Machine gun) === Damage: 2.5 Rate of fire: 30 shots per second Damage per second: 75 Power per shot: 0.8% Power per second: 24% Damage from full Power: 312.5 Activating supercharge while using the Machine gun creates the Gatling gun. When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. === [[Super Railgun]] (Supercharged Railgun) === Damage: 55 (68.75 vs medium and large enemies) Rate of fire: 1 shot per second Damage per second: 55 (68.75 vs medium and large enemies) Power per shot: 25% Power per second: 25% Damage from full Power: 220 (275 vs medium and large enemies) Damage reduction per hit: 5 Minimum Damage: 5 Overkill modifier: -50% Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out everything behind it. The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. === [[Super Fusion gun]] (Supercharged Fusion gun) === Damage: 2.5 ~ 2 depending on distance Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 87.5 ~ 70 depending on distance Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 70 ~ 56 depending on distance Power per volley: 33% Power per second: 26.4% Damage from full Power: ~265 to ~212 depending on distance The Super Fusion gun fires a massive volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). The Super Fusion gun is best used this way to essentially clear the screen of small enemies, and can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. The Super Fusion gun has massive recoil. == Mixed Weapons == Mixed weapons are introduced in the Mad Scientist Boss, after which they are available to use freely. In Expert modes mixed weapons are enabled from the beginning. In the default Fighter mode, weapons are used in pairs. Mixed weapons allows for switching to mismatched pairs. Both weapons' fire rate is reduced to half of their respective fire rates and offers no clear benefit in Fighter mode. However, once Supercharge is activated with a mismatched pair, a new Super Weapon is created combining the advantages of both weapons. === Controls === Weapon mixing can be done in one of two different ways: either pressing down two weapon buttons simultaneously, or using separate buttons to cycle either the left or right weapon separately. The difference between cycling the left or right weapon is how it affects the normal cycle weapons button. Normal cycle weapons switches to a matched pair that is the next or previous weapon from the left weapon. So using cycle left buttons affects normal the following normal weapon cycling while cycle right does not. * Defaults: ** Keyboard: Press two weapon buttons (S,D,F) simultaneously ** Gamepad: D-pad left and right to Cycle Right Weapon === [[Gatling Railgun]] (Supercharged Machine gun + Railgun) === Damage: 3 (3.75 vs medium and large enemies) Rate of fire: 15 shots per second Damage per second: 45 (56.25 vs medium and large enemies) Power per shot: 1.6% Power per second: 24% Damage from full Power: 187.5 (234.375 vs medium and large enemies) Damage reduction per hit: 0.2 The Gatling Railgun is possibly the most versatile of the Super Weapons: it practically adds the piercing function to the already versatile Gatling gun. It fires projectiles functionally identical to the basic railgun, but at a high rate of fire. The trade off is the lowest single target damage of all the Super Weapons, but this statistic is deceptive as hitting only two enemies already nearly doubles its total damage. The recoil of the Gatling Railgun is mild compared to the other Super Weapons and easily manageable. It is still impossible to move forward while firing but the backwards force can be almost entirely canceled out by trying to move forward. === [[Gatling Fusion gun]] (Supercharged Machine gun + Fusion gun) === Damage: 2.5 - 0.5 depending on distance Projectiles per volley: 6 Damage per volley: 15 - 3 depending on distance Rate of fire: 7.5 volleys per second Damage per second: 112.5 - 22.5 depending on distance Power per volley: 4% Power per second: 30% Damage from full Power: 375 - 75 depending on distance The Gatling Fusion gun has the highest damage potential and damage per second out of all the Super Weapons (not counting the secret ultimate weapon). However using that damage potential requires the player to be on top of, or near the target enemies, and an extended period of time for continuous fire. This can prove challenging with the Supercharged mode's slow movement speed and high recoil of the Gatling Fusion gun. === [[Fusion Railgun]] (Supercharged Fusion gun + Railgun) === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 5 + 6 + 7 + 8 + 9 = 35 Damage per volley: 105 (131.25 vs medium and large enemies) Rate of fire: 0.8 volleys per second ( = 1.25 second cooldown) Damage per second: 84 (105 vs medium and large enemies) Power per volley: 50% Power per second: 40% Damage from full Power: 210 (262.5 vs medium and large enemies) Damage reduction per hit: 0.2 The BFG of Technocide. Functionally identical to the Super Fusion gun but with each pellet replaced with a basic railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. === (Secret) [[Ultimate Weapon]] === Damage: 3 (3.75 vs medium and large enemies) Projectiles per volley: 6 Damage per volley: 18 (22.5 vs medium and large enemies) Rate of fire: 7.5 volleys per second Damage per second: 135 (168.75 vs medium and large enemies) Power per volley: 7% Power per second: 52.5% Damage from full Power: ~257 (~321 vs medium and large enemies) Damage reduction per hit: 0.2 The Ultimate Weapon combines all three weapons into a ridiculously overpowered gun that depletes Power alarmingly fast. Functionally identical to the Gatling Fusion gun but with each pellet replaced with a basic railgun projectile. Essentially rapid-fire rail-shotgun. The Ultimate weapon can only be activated when at 100% Power. It is activated either by pressing all three separate weapon buttons simultaneously (Keyboard default: S,D,F), or by pressing Cycle Next Weapon and Cycle Previous Weapon simultaneously (Gamepad default: RB+LB (Xbox), R1+L1(Playstation)). Technocide offers no hint on it's existence until the player activates it for the first time on accident, after which they get a brief reaction from the head scientist and a one-time instruction screen after the level. == Mods == There are three Super Weapon Mods in Technocide. Each affects one of the main weapons' Supercharged variant and all mixed weapons derived from that main weapon. All mods affect The Ultimate Weapon. A Super Weapon Mod can be earned by completing the hard level in the Asteroid Field, marked as "Reward: Special". Once completed, the player may choose one of the mods they do not already own. It is possible to acquire two mods if one mod was carried over from the previous run instead of an equipment. The mods function simultaneously when the appropriate mixed Super Weapon is used. === Controls === Mods are not simple upgrades and can have trade-offs. A mod can be toggled on/off at will if one wishes to use the unmodded version of the weapon. * Default: ** Keyboard: [G] ** Gamepad: D-pad up === [[Spread Mod]] === The Spread Mod affects the Gatling Gun, Gatling Railgun, Gatling Fusion gun and The Ultimate Weapon. It changes the firing pattern to a "double helix" wave pattern. For the Gatling Gun and Gatling Railgun, this means a near doubling of damage at the cost of accuracy, but no extra power cost. It is not exactly double because when the waves cross in the center, a single shot is fired instead of two. For the Gatling Fusion gun and The Ultimate Weapon, every other volley is a double volley fired to both sides, adding only 50% additional shots. This is very beneficial for the Ultimate weapon as most of the screen can be hit with railgun shots with a short 2 round burst for a mere 14% Power cost. === [[Smart Shot]] === The Smart Shot affects the Super Railgun, Gatling Railgun, Fusion Railgun and The Ultimate Weapon. After hitting an enemy, it makes the railgun shot change direction towards another enemy. The downside is that damage is reduced much more for each hit and it does not have the same damage potential for hitting lined up enemies. The upside is that enemies do not need to be lined up to hit multiple of them at the same time. It is inadvisable to use the Smart Shot with the Space Compactor equipment, as the unmodded railguns hit bunched up enemies much harded. === [[Bomb Mod]] === The Bomb mod affects the Super Fusion gun, Gatling Fusion gun, Fusion Railgun and The Ultimate Weapon. The Bomb Mod changes these weapons so that instead of firing a volley of shots, it launches a bomb, which upon detonation, releases double the amount of shots compared to the unmodded volley in all directions. How the bomb detonates depends whether it is a Gatling type Super Weapon or not. For the Super Fusion gun and Fusion Railgun, the bomb detonates when the Fire button is released. This makes it possible for a skilled player to aim and detonate the bomb on top or "inside" an enemy, instantly dealing its full damage to it and possibly releasing extreme amounts of shrapnel from Overkill. For the Gatling Fusion gun and The Ultimate Weapon, bombs detonate on contact with enemies, or when reaching the top of the screen. These bombs never detonate inside enemies when fired from farther away but it is possible when getting on top of the enemy yourself. The bomb mod also reduces recoil by a considerable amount, as most of the explosive force of the weapon is contained within the launched bomb. d49fc12aac92f50fa5ee093aa29fe68dd9970ef9 File:Site-favicon.ico 6 278 307 2025-04-02T18:30:26Z Tokepoke 586382 wikitext text/x-wiki == Licensing == {{License|game}} 5fdc0517c60eec1aa02a1fef9763fa88c38be9ad 309 307 2025-04-12T08:37:26Z Tokepoke 586382 Protected "[[File:Site-favicon.ico]]" ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite)) wikitext text/x-wiki == Licensing == {{License|game}} 5fdc0517c60eec1aa02a1fef9763fa88c38be9ad 312 309 2025-04-12T08:48:25Z Tokepoke 586382 Changed protection settings for "[[File:Site-favicon.ico]]": setup ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite)) [cascading] wikitext text/x-wiki == Licensing == {{License|game}} 5fdc0517c60eec1aa02a1fef9763fa88c38be9ad File:Site-logo.png 6 279 308 2025-04-02T18:35:12Z Tokepoke 586382 wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 311 308 2025-04-12T08:47:57Z Tokepoke 586382 Protected "[[File:Site-logo.png]]": setup ([Edit=Allow only administrators] (indefinite) [Rename=Allow only administrators] (indefinite) [Upload=Allow only administrators] (indefinite)) [cascading] wikitext text/x-wiki da39a3ee5e6b4b0d3255bfef95601890afd80709 MediaWiki:Vector.css 8 49 310 50 2025-04-12T08:43:38Z Tokepoke 586382 css text/css /* All CSS here will be loaded for users of the Vector skin */ /********************************************************* * Backwards compatibility with deprecated variable names * **********************************************************/ :root { --wiki-heading-color: var(--wiki-content-heading-color); } /**************************************** * End backwards compatibility variables * *****************************************/ /************************************ * Body, head, and general framework * *************************************/ html, body{ height: auto; min-height: 100%; } body { background-color: var(--wiki-body-background-color); background-image: var(--wiki-body-background-image); /* the following have fallbacks for backwards compatibility with older versions of the loadout */ background-position: var(--wiki-body-background-position, top center); background-size: var(--wiki-body-background-size, cover); background-repeat: var(--wiki-body-background-repeat, no-repeat); background-attachment: var(--wiki-body-background-attachment, fixed); font-family: var(--wiki-body-font-family); accent-color: var(--wiki-accent-color); box-sizing: border-box; } /* clear fix */ body::after{ content: ""; display: table; clear: both; } #mw-page-base { background:none; } /* let ul default to text that respects color */ ul { list-style-image: none; } /************************ * End general framework * *************************/ /************** * Vector tabs * ***************/ .vector-menu-tabs-legacy { padding-left: var(--wiki-content-border-width, 1px); } .vector-menu-tabs-legacy li, #p-cactions { background-image: linear-gradient( to top, var(--wiki-navigation-border-color) 0, var(--wiki-navigation-background-color) var(--wiki-content-border-width, 1px), var(--wiki-navigation-background-color--secondary) 100%); } #p-cactions { z-index: 5; } #p-variants { background-color: var(--wiki-content-background-color); } .vector-menu-dropdown { /* Matching a built-in rule for .vector-menu-tabs-legacy */ height: 2.5em; } .vector-menu-tabs-legacy li.selected { background: var(--wiki-navigation-selected-background-color); border-color: var(--wiki-navigation-selected-border-color); } .vector-menu-tabs, .vector-menu-tabs a, #mw-head .vector-menu-dropdown .vector-menu-heading{ background-image: linear-gradient(to bottom,transparent 0,var(--wiki-navigation-border-color) 100%); background-size: var(--wiki-content-border-width, 1px) 100%; } .vector-menu-tabs li a, .vector-menu-tabs li.new a, .vector-menu-tabs li.new a:visited, .vector-menu-tabs .selected a, .vector-menu-tabs .selected a:visited, #mw-head .vector-menu-dropdown .vector-menu-heading { color: var(--wiki-navigation-text-color); } .vector-menu-tabs .selected a, .vector-menu-tabs .selected a:visited { color: var(--wiki-navigation-selected-text-color); } .vector-menu-dropdown .vector-menu-content { background: none; border: none; box-shadow:none; margin-top:-1px; } .vector-menu-dropdown .vector-menu-content-list { background-color: var(--wiki-navigation-background-color--secondary); border: 1px solid var(--wiki-navigation-border-color); } div.vectorMenu .mw-list-item a, .vector-menu-dropdown .mw-list-item a, .vector-menu-dropdown .mw-list-item.selected a, .vector-menu-dropdown .mw-list-item.selected a:visited { color: var(--wiki-navigation-text-color); } .vector-menu-tabs li a:hover, .vector-menu-tabs li.new a:hover, .vector-menu-tabs li.new a:visited:hover, #mw-head .vector-menu-dropdown .vector-menu-heading:hover, div.vectorMenu .mw-list-item a:hover, .vector-menu-dropdown .mw-list-item.selected a:hover, .vector-menu-dropdown .mw-list-item.selected a:visited:hover { color:var(--wiki-navigation-text-color--hover); } .vector-menu-tabs .selected a:hover, .vector-menu-tabs .selected a:visited:hover { /* don't use the regular hover color because the background of selected could be different */ color: var(--wiki-navigation-selected-text-color); } .vector-menu-dropdown .vector-menu-heading::after { filter: brightness(0) var(--wiki-icon-to-link-filter); } #p-search { z-index:2; } #p-search .searchButton { background-color:transparent; } /****************** * End vector tabs * *******************/ /******** * Links * *********/ a, .mw-parser-output a.external, .mw-parser-output a.extiw { color: var(--wiki-content-link-color); } a:visited, .mw-parser-output a.extiw:visited, .mw-parser-output a.external:visited { color: var(--wiki-content-link-color--visited); } a:not(.mw-selflink):hover, a:visited:hover, .mw-parser-output a.extiw:hover, .mw-parser-output a.extiw:visited:hover, .mw-parser-output a.external:hover, .mw-parser-output a.external:visited:hover { color:var(--wiki-content-link-color--hover); } a.new, a.new:visited, a.new:hover, .mw-usertoollinks-contribs-no-edits { color:var(--wiki-content-redlink-color); } a:not(.mw-selflink):active, a:visited:active, .mw-parser-output a.extiw:active, .mw-parser-output a.extiw:visited:active, .mw-parser-output a.external:active, .mw-parser-output a.external:visited:active { color: var(--wiki-warning-color); } /* move external marker to an after so we can filter it to link color */ .mw-parser-output a.external { background:none; padding-right: 0; } .mw-parser-output a.external::after { display:inline-block; width:1em; height:1em; margin-left:1px; content:''; vertical-align: text-top; --mask: var(--icon) no-repeat; --mask-size: 0.857em; --mask-position: center right; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: var(--mask-size); mask-size: var(--mask-size); -webkit-mask-position: var(--mask-position); mask-position: var(--mask-position); background-color: currentColor; } .mw-parser-output a.external::after { margin-left:0; --icon: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22 viewBox=%220 0 12 12%22%3E %3Cpath d=%22M6 1h5v5L8.86 3.85 4.7 8 4 7.3l4.15-4.16L6 1ZM2 3h2v1H2v6h6V8h1v2a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1Z%22/%3E %3C/svg%3E"); } .plainlinks a.external::after { display:none; } a.extiw[title^="wikipedia:"]::after, a.extiw[title^="wp:"]::after, a.extiw[title^="mw:"]::after, a.extiw[title^="support:"]::after { display:inline-block; width:1em; height:1em; margin-left:1px; background-position: center right; background-repeat: no-repeat; background-size: 0.857em; content:''; vertical-align: text-top; } a.extiw[title^="wikipedia:"]::after, a.extiw[title^="wp:"]::after { background-image:url(https://commons.wiki.gg/images/2/28/Wikipedia.svg?202406); } a.extiw[title^="mw:"]::after { background-image:url(https://commons.wiki.gg/images/9/9b/MediaWiki.svg?202406); } a.extiw[title^="support:"]::after { background-image:url(https://commons.wiki.gg/images/9/9b/Wiki.gg_icon-pink.svg); } /************ * End links * *************/ /*************** * Left Sidebar * ****************/ #mw-panel .vector-menu-portal { background-color: var(--wiki-sidebar-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-sidebar-background-color) var(--wiki-sidebar-background-opacity), transparent); border: var(--wiki-sidebar-border-width, 1px) solid var(--wiki-sidebar-border-color); margin: 0 0.5em; } #mw-panel .vector-menu-portal + .vector-menu-portal { border-top-width: 0; } #mw-panel .vector-menu-portal:last-child { margin-bottom:0; } .vector-menu-portal .vector-menu-heading { padding: 0.5rem 0.25rem 0 0.5rem; margin: 0; background: none; color: var(--wiki-sidebar-heading-color); font-family:var(--wiki-sidebar-heading-font-family); } .vector-menu-portal .vector-menu-content { margin: 0 0.5em; } .vector-menu-portal .vector-menu-content li a{ display: block; } .vector-menu-portal .vector-menu-content .mw-list-item a, .vector-menu-portal .vector-menu-content .mw-list-item a:visited, .vector-menu-portal .vector-menu-content li a, .vector-menu-portal .vector-menu-content li a:visited { color: var(--wiki-sidebar-link-color); } .vector-menu-portal .vector-menu-content .mw-list-item a:hover, .vector-menu-portal .vector-menu-content .mw-list-item a:visited:hover { color:var(--wiki-sidebar-link-color--hover); } #t-newpage { --sidebar-icon:url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 384 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M0 64C0 28.7 28.7 0 64 0H224V128c0 17.7 14.3 32 32 32H384V448c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V64zm384 64H256V0L384 128z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-upload { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 512 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M288 109.3V352c0 17.7-14.3 32-32 32s-32-14.3-32-32V109.3l-73.4 73.4c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l128-128c12.5-12.5 32.8-12.5 45.3 0l128 128c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L288 109.3zM64 352H192c0 35.3 28.7 64 64 64s64-28.7 64-64H448c35.3 0 64 28.7 64 64v32c0 35.3-28.7 64-64 64H64c-35.3 0-64-28.7-64-64V416c0-35.3 28.7-64 64-64zM432 456a24 24 0 1 0 0-48 24 24 0 1 0 0 48z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-print { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 512 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M128 0C92.7 0 64 28.7 64 64v96h64V64H354.7L384 93.3V160h64V93.3c0-17-6.7-33.3-18.7-45.3L400 18.7C388 6.7 371.7 0 354.7 0H128zM384 352v32 64H128V384 368 352H384zm64 32h32c17.7 0 32-14.3 32-32V256c0-35.3-28.7-64-64-64H64c-35.3 0-64 28.7-64 64v96c0 17.7 14.3 32 32 32H64v64c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V384zM432 248a24 24 0 1 1 0 48 24 24 0 1 1 0-48z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-whatlinkshere { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 640 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M579.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L422.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C206.5 251.2 213 330 263 380c56.5 56.5 148 56.5 204.5 0L579.8 267.7zM60.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C74 372 74 321 105.5 289.5L217.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C433.5 260.8 427 182 377 132c-56.5-56.5-148-56.5-204.5 0L60.2 244.3z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-specialpages { --sidebar-icon: url('data:image/svg+xml;charset=UTF-8,%3Csvg xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22 viewBox%3D%220 0 576 512%22%3E%3C!--%21Font Awesome Free 6.5.2 by %40fontawesome - https%3A%2F%2Ffontawesome.com License - https%3A%2F%2Ffontawesome.com%2Flicense%2Ffree Copyright 2024 Fonticons%2C Inc.--%3E%3Cpath d%3D%22M316.9 18C311.6 7 300.4 0 288.1 0s-23.4 7-28.8 18L195 150.3 51.4 171.5c-12 1.8-22 10.2-25.7 21.7s-.7 24.2 7.9 32.7L137.8 329 113.2 474.7c-2 12 3 24.2 12.9 31.3s23 8 33.8 2.3l128.3-68.5 128.3 68.5c10.8 5.7 23.9 4.9 33.8-2.3s14.9-19.3 12.9-31.3L438.5 329 542.7 225.9c8.6-8.5 11.7-21.2 7.9-32.7s-13.7-19.9-25.7-21.7L381.2 150.3 316.9 18z%22%2F%3E%3C%2Fsvg%3E'); order:-1; } #t-cargopagevalueslink { --sidebar-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' version='1.1' viewBox='0 0 126.971 136.024'%3E%3Cpath d='m105.999 0-84 .049L0 8.957v127.065h126.97V8.957Z' fill='none' display='inline' opacity='1' paint-order='normal'/%3E%3Cpath d='m9.735 8.774 12.265-5h84l12.25 5H9.75' fill='%23000' fill-opacity='1' display='inline'/%3E%3Cpath d='M3.5 41.024H28v63.5H3.5zm95.5 0h24.5v63.5H99zm-95.5 67.5H123v24H3.5zm0-95.5H123v24H3.5zm27.985 28V59.67l13.61 13.61 17.323 17.324 1.788 1.787 12.131 12.132h19.147v-16.21l-13.6-13.6-1.788-1.787-17.325-17.324-14.578-14.579H31.485zm45.865 0-12.2 12.2 17.324 17.324 13.01-13.01V41.024H77.35zM42.716 75.658l-11.23 11.231v17.634h17.013l11.541-11.54-17.324-17.325z' fill='%23000' fill-opacity='1' fill-rule='nonzero' display='inline' opacity='1' paint-order='normal'/%3E%3C/svg%3E"); order:-1; } #t-specialpages > a::before, #t-whatlinkshere > a::before, #t-print > a::before, #t-newpage > a::before, #t-upload > a::before, #t-cargopagevalueslink > a::before { content:''; background-image:var(--sidebar-icon); background-size:contain; background-repeat:no-repeat; background-position:center; display:inline-block; width:15px; height:15px } #p-tb .mw-list-item > a::before { filter:var(--wiki-icon-to-link-filter) } #p-tb .mw-list-item > a { display:flex; align-items:center; gap:3px } #p-tb .vector-menu-content-list { display:flex; flex-direction:column; } /* Sidebar spacing and border-radius section */ #mw-panel .vector-menu-portal:not(:last-child) { margin-bottom:var(--wiki-sidebar-portal-spacing); } #mw-panel #p-logo + .vector-menu-portal { /* The way this works is that if the sidebar does not have any spacing, only the top and bottom corners of the top and bottom portals respectively should be rounded, instead of all corners of every portal. min and calc are combined here to basically create an `if x > 0 then y else z` function. The lower of (sidebar-border-radius) and (spacing * 999) are compared and the smaller value is taken (999 is simply an arbitrary large number). If portal spacing is zero, multiplying it gets 0 and will be the smaller value. If it's non-zero, it will be large and sidebar-border-radius will be the smaller value. This is only applied to the "inner" corners because we'd want the "outer" corners rounded in either scenario. */ border-radius: var(--wiki-sidebar-border-radius) var(--wiki-sidebar-border-radius) calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )) calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )); } #mw-panel .vector-menu-portal:last-child { /* see rule above for explanation */ border-radius: calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )) calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )) var(--wiki-sidebar-border-radius) var(--wiki-sidebar-border-radius); } #mw-panel .vector-menu-portal { /* see above rules for explanation */ border-radius:calc(min(var(--wiki-sidebar-border-radius), var(--wiki-sidebar-portal-spacing) * 999 )); } #mw-panel .vector-menu-portal + .vector-menu-portal { /* This keeps the border from doubling up if there is no spacing between them, The portals other than the first only have a top border if there is spacing */ border-top-width: min(var(--wiki-sidebar-border-width, 1px), var(--wiki-sidebar-portal-spacing, 0px)); /* the 1px and 0px fallbacks are for backwards compatibility with older versions of the loadout */ } /* end sidebar spacing and border-radius */ /******************* * End left sidebar * ********************/ /******* * Logo * ********/ /* [[File:Site-logo.png]] */ .mw-wiki-logo { background-size: contain; } /*********** * End logo * ************/ /*************** * Content area * ****************/ .mw-body, .parsoid-body, .mw-footer { color: var(--wiki-content-text-color); background-color: var(--wiki-content-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color) var(--wiki-content-background-opacity), transparent); border: var(--wiki-content-border-width, 1px) solid var(--wiki-content-border-color); margin-right: 1em; } .mw-footer { border-top-width:0; } .mw-footer li { color: var(--wiki-content-text-color); } /* fix */ @media screen and (max-width: 900px) { #footer-icons, #footer-places { clear: unset; } } @media screen and (max-width: 981px) { .mw-body, .parsoid-body, .mw-footer { margin-right: 0; } } /******************************* * End content area and footer * *******************************/ /*********** * Headings * ************/ .mw-body h1, .mw-body h2 { border-bottom: 1px solid var(--wiki-content-border-color); font-family: var(--wiki-heading-font-family); } h1, h2, h3, h4, h5, h6 { color: var(--wiki-heading-color); } .client-js .mw-content-ltr .mw-editsection-bracket:first-of-type, .client-js .mw-content-rtl .mw-editsection-bracket:not(:first-of-type), .mw-editsection-divider, .client-js .mw-content-rtl .mw-editsection-bracket:first-of-type, .client-js .mw-content-ltr .mw-editsection-bracket:not(:first-of-type) { color: var(--wiki-heading-color); } /*************** * End headings * ****************/ /************* * Wikitables * **************/ .wikitable { background: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .wikitable>tr>th, .wikitable>*>tr>th { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .wikitable>tr>td, .wikitable>*>tr>td { border: 1px solid var(--wiki-content-border-color); } /* Forward = yes bg on Special:Interwiki */ table.mw-interwikitable.body td.mw-interwikitable-local-yes { background: var(--content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 25%, transparent); } .zebra-table > * > tr:nth-of-type(2n), .zebra-table > tr:nth-of-type(2n) { background: transparent; /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--secondary) 5%, transparent); } .client-js .sortable:not(.jquery-tablesorter) > * > tr:first-child > th:not(.unsortable), .jquery-tablesorter th.headerSort { background-image: unset; position: relative; } .client-js .sortable:not(.jquery-tablesorter) > * > tr:first-child > th:not(.unsortable)::after, .jquery-tablesorter th.headerSort::after { content: ""; display: block; position: absolute; top: 0; right: 0; width: 21px; height: 100%; --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2221%22 height=%229%22 viewBox=%220 0 21 9%22%3E %3Cpath d=%22m14.5 5-4 4-4-4zm0-1-4-4-4 4z%22 fill=%22%23fff%22/%3E %3C/svg%3E") no-repeat; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: auto; mask-size: auto; -webkit-mask-position: center right; mask-position: center right; background-color: var(--wiki-content-link-color); } .jquery-tablesorter th.headerSortUp::after { --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2221%22 height=%224%22 viewBox=%220 0 21 4%22%3E %3Cpath d=%22m6.5 4 4-4 4 4z%22 fill=%22%23fff%22/%3E %3C/svg%3E") no-repeat; } .jquery-tablesorter th.headerSortDown::after { --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2221%22 height=%224%22 viewBox=%220 0 21 4%22%3E %3Cpath d=%22m14.5 0-4 4-4-4z%22 fill=%22%23fff%22/%3E %3C/svg%3E") no-repeat; } /***************** * End wikitables * ******************/ /************** * Preferences * ***************/ .mw-prefs-tabs-wrapper.oo-ui-panelLayout-framed, .mw-prefs-tabs>.oo-ui-menuLayout-content>.oo-ui-indexLayout-stackLayout>.oo-ui-tabPanelLayout { border: none; } .oo-ui-tabSelectWidget-framed { background-color: transparent; border-bottom: 1px solid var(--wiki-accent-color); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover { background-color:var(--wiki-accent-label-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-label-color) 75%, transparent); color: var(--wiki-accent-color); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled:hover { color: var(--wiki-accent-color--hover); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected, .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget-selected:hover { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-tabSelectWidget-framed .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected .oo-ui-labelElement-label { border-bottom: none; } #preferences .mw-htmlform-submit-buttons { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled, .oo-ui-textInputWidget .oo-ui-inputWidget-input, .oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input[readonly]:not(.oo-ui-pendingElement-pending) { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); } .oo-ui-pendingElement-pending { background-color: var(--wiki-content-background-color--secondary); background-image: linear-gradient(135deg,var(--wiki-content-background-color) 25%,transparent 25%,transparent 50%,var(--wiki-content-background-color) 50%,var(--wiki-content-background-color) 75%,transparent 75%,transparent); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select { color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color) } .view-dark .oo-ui-inputWidget-input.oo-ui-indicator-down { background-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22 viewBox=%220 0 12 12%22%3E%3Ctitle%3E down %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M9.9 2.9 6 6.8 2.1 2.9 1 4l5 5 5-5z%22/%3E%3C/g%3E%3C/svg%3E"); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:hover { color:var(--wiki-content-text-mix-color); border-color:var(--wiki-accent-color); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:active { color: var(--wiki-content-dynamic-color); border-color: var(--wiki-accent-color) } .oo-ui-dropdownInputWidget select option, .oo-ui-dropdownInputWidget select optgroup { color: #000; } .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:hover, .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:focus, .oo-ui-dropdownWidget.oo-ui-widget-enabled .oo-ui-dropdownWidget-handle:active, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled:hover, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled:focus, .oo-ui-dropdownInputWidget.oo-ui-widget-enabled:active, .oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input, .oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input:focus, .oo-ui-textInputWidget.oo-ui-widget-enabled:active .oo-ui-inputWidget-input, .oo-ui-textInputWidget.oo-ui-widget-enabled:hover .oo-ui-inputWidget-input:focus { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-accent-color); box-shadow: none; } .oo-ui-radioInputWidget [type="radio"] + span { background-color:var(--wiki-content-dynamic-color--inverted); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked + span, .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:hover + span{ border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 90%, transparent); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:hover + span { border-color:var(--wiki-accent-color); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:active + span{ background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:focus + span::before { border-color: var(--wiki-content-dynamic-color--inverted); } .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked:active + span { border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); /* fallback */ box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-menuOptionWidget.oo-ui-widget-enabled.oo-ui-optionWidget { color: var(--wiki-content-text-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-menuOptionWidget.oo-ui-optionWidget.oo-ui-optionWidget-selected, .oo-ui-menuOptionWidget.oo-ui-optionWidget.oo-ui-optionWidget-highlighted, .oo-ui-menuOptionWidget.oo-ui-optionWidget.oo-ui-optionWidget-highlighted.oo-ui-optionWidget-selected, .oo-ui-dropdownWidget.oo-ui-widget-enabled.oo-ui-dropdownWidget-open .oo-ui-dropdownWidget-handle { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); color: var(--wiki-content-text-color); } .oo-ui-menuOptionWidget.oo-ui-optionWidget-selected.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted, .oo-ui-menuOptionWidget.oo-ui-optionWidget-pressed.oo-ui-menuOptionWidget.oo-ui-optionWidget-highlighted { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); color: var(--wiki-accent-color); } .mw-prefs-tabs.mw-prefs-tabs-searching .oo-ui-tabPanelLayout.mw-prefs-search-matched > fieldset > legend { background: var(--wiki-content-background-color--secondary); } .mw-prefs-search-highlight { background-color: transparent !important; /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 7%, transparent) !important; outline-color: transparent !important; /* fallback */ outline-color: color-mix(in srgb, var(--wiki-accent-color) 7%, transparent) !important; } /**************** * End preferences * *****************/ /*************** * Page history * ****************/ #pagehistory li { background-color: transparent; border: none; } #pagehistory li.selected { background-color: var(--wiki-content-background-color--secondary); border: 1px dashed var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .diff td.diff-addedline { background-color: var(--wiki-content-background-color); border-color: var(--wiki-success-color); border-width: 1px 1px 1px 4px; } .diff td.diff-addedline .diffchange { background-color: var(--wiki-success-color); color: var(--wiki-success-label-color); } .diff td.diff-deletedline { background-color: var(--wiki-content-background-color); border-color: var(--wiki-alert-color); border-width: 1px 1px 1px 4px; } .diff td.diff-deletedline .diffchange { background-color: var(--wiki-alert-color); color: var(--wiki-alert-label-color) } .diff td.diff-context { background:var(--wiki-content-text-mix-color-95); /* fallback */ background: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 80%, var(--wiki-content-background-color)); border-color: var(--wiki-neutral-color, var(--wiki-content-text-mix-color)); /* fallback for backwards compatibility */ color: var(--wiki-content-text-color); } .diff-marker a.mw-diff-movedpara-right { color: transparent; } .diff-marker a.mw-diff-movedpara-right:hover:after { opacity: .75; } .diff-marker a.mw-diff-movedpara-right:after { color: var(--wiki-content-text-color); content: "\21a9"; } .diff-marker a.mw-diff-movedpara-left { color: transparent; } .diff-marker a.mw-diff-movedpara-left:hover:after { opacity: .75; } .diff-marker a.mw-diff-movedpara-left:after { color: var(--wiki-content-text-color); content: "\21aa"; } .mw-plusminus-neg { color:var(--wiki-alert-color); } .mw-plusminus-null{ color:var(--wiki-neutral-color, var(--wiki-content-text-mix-color)); /* fallback for backwards compatibility */ } .mw-plusminus-pos { color:var(--wiki-success-color); } .updatedmarker { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-success-color) 25%, transparent); color:var(--wiki-content-text-color); } li span.deleted, span.history-deleted { color: var(--wiki-content-text-mix-color); } span.mw-history-suppressed { /* overrides above, since suppressed is also deleted */ color: var(--wiki-content-text-color); } /* inline diff (1.41) */ .mw-diff-inline-header { border-bottom: 1px solid var(--wiki-content-border-color); } .mw-diff-inline-added ins, .mw-diff-inline-changed ins, .mw-diff-inline-moved ins, .mw-diff-table-prefix .mw-diff-inline-legend .mw-diff-inline-legend-ins, .mw-diff-inline-added.mw-diff-empty-line::after, .mw-inline-diff-newline::after { background:var(--wiki-success-color); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 90%, transparent); color: var(--wiki-success-label-color); display: inline-block; } .mw-diff-inline-added.mw-diff-empty-line::after, .mw-diff-inline-deleted.mw-diff-empty-line::after, .mw-inline-diff-newline::after { padding: 0.4em 0; } .mw-diff-inline-deleted del, .mw-diff-inline-changed del, .mw-diff-inline-moved del, .mw-diff-table-prefix .mw-diff-inline-legend .mw-diff-inline-legend-del, .mw-diff-inline-deleted.mw-diff-empty-line::after { background:var(--wiki-alert-color); /* fallback */ background: color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); color: var(--wiki-alert-label-color); display: inline-block; } .mw-diff-movedpara-left::after, .mw-diff-movedpara-right::after { color: var(--wiki-content-text-color); } .ve-ui-diffElement-hasDescriptions .ve-ui-diffElement-content { border-right-color: var(--wiki-content-border-color); } .ve-ui-diffElement-attributeChange { color: var(--wiki-content-text-mix-color); } .ve-ui-diffElement-attributeChange ins { background-color:var(--wiki-success-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-success-color) 90%, transparent); box-shadow: 0 0 0 1px var(--wiki-success-color); /* fallback */ box-shadow: 0 0 0 1px color-mix(in srgb, var(--wiki-success-color) 90%, transparent); color: var(--wiki-success-label-color); } .ve-ui-diffElement-attributeChange del { background-color:var(--wiki-alert-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); box-shadow: 0 0 0 1px var(--wiki-alert-color); /* fallback */ box-shadow: 0 0 0 1px color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); color: var(--wiki-alert-label-color); } .ve-ui-diffElement-highlight { outline-color:var(--wiki-accent-color); /* fallback */ outline-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .ve-ui-changeDescriptionsSelectWidget > .oo-ui-optionWidget-highlighted { background:var(--wiki-accent-color); /* fallback */ background: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); } /* Edit conflict */ .mw-twocolconflict-split-tour-image-dual-column-view-1 { filter:var(--wiki-icon-general-filter); } .mw-twocolconflict-split-tour-image-blue-dot { filter:brightness(0) var(--wiki-icon-to-link-filter); } .mw-pulsating-dot::before, .mw-pulsating-dot::after { background-color: var(--wiki-content-link-color); } .mw-twocolconflict-split-current-version-header .mw-twocolconflict-revision-label { background-color: var(--wiki-alert-color); color:var(--wiki-alert-label-color); } .mw-twocolconflict-special-your-version-header .mw-twocolconflict-revision-label, .mw-twocolconflict-split-your-version-header .mw-twocolconflict-revision-label { background-color: var(--wiki-success-color); color:var(--wiki-success-label-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-copy, .mw-twocolconflict-split-column.mw-twocolconflict-split-copy { border-color: var(--wiki-neutral-color, var(--wiki-content-text-mix-color)); /* fallback for backwards compatibility */ background-color: var(--wiki-content-text-mix-color-95); } .mw-twocolconflict-single-column .mw-twocolconflict-split-collapsed .mw-twocolconflict-split-fade, .mw-twocolconflict-split-column .mw-twocolconflict-split-collapsed .mw-twocolconflict-split-fade { background-image: linear-gradient(transparent, var(--wiki-content-text-mix-color-95)); } .mw-twocolconflict-single-column, .mw-twocolconflict-split-column { background-color: var(--wiki-content-background-color); color: var(--wiki-content-text-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-delete, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-delete { border-color:var(--wiki-alert-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-alert-color) 40%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-delete, .mw-twocolconflict-split-column.mw-twocolconflict-split-delete { border-color: var(--wiki-alert-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-add, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected.mw-twocolconflict-split-add { border-color:var(--wiki-success-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-success-color) 40%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-add, .mw-twocolconflict-split-column.mw-twocolconflict-split-add { border-color: var(--wiki-success-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange { background-color:var(--wiki-alert-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-alert-color) 30%, transparent); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected del.mw-twocolconflict-diffchange, .mw-twocolconflict-single-column del.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column del.mw-twocolconflict-diffchange { background-color: var(--wiki-alert-color); color: var(--wiki-alert-label-color); } .mw-twocolconflict-single-column.mw-twocolconflict-split-unselected ins.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column.mw-twocolconflict-split-unselected ins.mw-twocolconflict-diffchange, .mw-twocolconflict-single-column ins.mw-twocolconflict-diffchange, .mw-twocolconflict-split-column ins.mw-twocolconflict-diffchange { background-color: var(--wiki-success-color); color:var(--wiki-success-label-color); } .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked + span, .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget [type="radio"] + span { border-color: var(--wiki-success-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-success-color) 80%, transparent); background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 10%, transparent); } .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .mw-twocolconflict-split-selection > div:nth-child(2) .oo-ui-radioInputWidget [type="radio"] + span { border-color: var(--wiki-success-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-success-color) 90%, transparent); background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 10%, transparent); } .mw-twocolconflict-split-selection > div:nth-child(1) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:checked + span, .mw-twocolconflict-split-selection > div:nth-child(1) .oo-ui-radioInputWidget.oo-ui-widget-enabled [type="radio"]:active + span, .mw-twocolconflict-split-selection > div:nth-child(1) .oo-ui-radioInputWidget [type="radio"] + span { border-color:var(--wiki-alert-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-alert-color) 90%, transparent); background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-alert-color) 10%, transparent); } .mw-twocolconflict-split-editable .mw-twocolconflict-split-editor { color:var(--wiki-content-text-color); } /**/ /******************* * End page history * ********************/ /******************** * Table of contents * *********************/ #toc, .toc, .toccolours, .mw-warning { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); box-shadow: 0 0.1em 0.2em #000000; } #mw-toc-heading{ border: 0; } .toctogglelabel { color: var(--wiki-content-link-color); } .tocnumber { color: var(--wiki-content-text-color); } /************************ * End table of contents * *************************/ /************* * Thumbnails * **************/ img.thumbborder { border: 1px solid var(--wiki-content-border-color); padding: 5px; } div.thumbinner { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } li.gallerybox div.thumb { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } html .thumbimage { background-color: unset; border: 1px solid var(--wiki-content-border-color); } .thumb, .thumb .thumbinner, .thumb .thumbimage { max-width: 100%; box-sizing: border-box; } .thumb .thumbimage:not(audio) { height: auto; } /* packed-overlay and packed-hover modes for galleries */ ul.mw-gallery-packed-hover li.gallerybox:hover div.gallerytextwrapper, ul.mw-gallery-packed-overlay li.gallerybox div.gallerytextwrapper, ul.mw-gallery-packed-hover li.gallerybox.mw-gallery-focused div.gallerytextwrapper { background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 65%, transparent); } /* Responsive floating thumbnails */ @media screen and (max-width: 720px) { div.tright, div.floatright, div.tleft, div.floatleft { float: none; margin: 0 auto; width: fit-content; } } /***************** * End thumbnails * ******************/ /************** * Wiki editor * ***************/ #wpTextbox0 { /* need !important here to override inline styling */ background-color:var(--wiki-content-background-color) !important; } .wikiEditor-ui { border: none; } .wikiEditor-ui .wikiEditor-ui-top, .wikiEditor-ui .wikiEditor-ui-view { border-color:var(--wiki-content-border-color); } .wikiEditor-ui-toolbar { background: var(--wiki-content-background-color--secondary); } .wikiEditor-ui-toolbar .group, .wikiEditor-ui-toolbar .section-secondary .group { border-color:var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .tabs span.tab a, .wikiEditor-ui-toolbar .tabs span.tab a:visited, .wikiEditor-ui-toolbar .tabs span.tab a.current, .wiikiEditor-ui-toolbar .tabs span.tab a.current:visited, .wikiEditor-ui-toolbar .booklet .index .current { color: var(--wiki-content-link-color); } .wikiEditor-ui-toolbar .group .tool-select .options { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .group .tool-select .options .option { color: var(--wiki-content-text-color); } .wikiEditor-ui-toolbar .group .tool-select .menu .options .option:hover { background-color: var(--wiki-content-background-color); } .wikiEditor-ui-toolbar .tabs span.tab a::before, .wikiEditor-ui-toolbar .group .tool-select .label::after { filter: var(--wiki-icon-general-filter); } .wikiEditor-ui-toolbar .group .label, .wikiEditor-ui-toolbar .group .tool-select .label, .wikiEditor-ui-toolbar .page-table th, .wikiEditor-ui-toolbar .page-table td, .wikiEditor-ui-toolbar .page-characters div span, .wikiEditor-ui-toolbar .booklet .index div { color: var(--wiki-content-text-color); } .wikiEditor-ui-toolbar .booklet>.index> :hover { background-color: var(--wiki-content-background-color--secondary); } .wikiEditor-ui-toolbar .page-characters div span { border: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .sections .section, .wikiEditor-ui-toolbar .booklet .pages, .wikiEditor-ui-toolbar .booklet .index .current, .wikiEditor-ui-toolbar .page-characters div span:hover { background-color: transparent; /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .wikiEditor-ui-toolbar .sections .section { border-top: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .page-characters div span:hover { border-color: var(--wiki-content-border-color); } .wikiEditor-ui-toolbar .page-table td { border-top: 1px solid var(--wiki-content-border-color); } .wikiEditor-ui-tabs div a { background: #9A647F; display: inline-block; } .wikiEditor-ui-tabs div.current { border-bottom: 1px solid #3B3352; } .wikiEditor-ui-tabs div.current a { font-weight: bold; } .wikiEditor-ui-tabs { border-left: 1px solid #3B3352; border-top: 1px solid #3B3352; } .wikiEditor-ui-text { background-color:var(--wiki-content-dynamic-color--inverted); } .wikiEditor-preview-contents { background: transparent; background-color: rgba(255, 255, 255, 0.2); border-color: #3B3352; border-style: solid; border-width: 0 1px 1px; } .wikiEditor-ui-controls { background: transparent; } .wikiEditor-preview-contents, .wikiEditor-preview-loading { background-color: transparent; } .mw-wikiEditor-InsertLink-TitleInputField .oo-ui-messageWidget, .mw-widget-titleWidget-menu .mw-widget-titleOptionWidget-description { color: var(--wiki-content-text-mix-color); } .wikiEditor-toolbar-dialog .ui-dialog-content input[type='text']::placeholder { color: var(--wiki-content-text-mix-color); } .ext-WikiEditor-ResizingDragBar { background-color: var(--wiki-content-background-color--secondary); } .ext-WikiEditor-ResizingDragBar-ns { border-color: var(--wiki-content-border-color); } .ext-WikiEditor-ResizingDragBar span { background-color: var(--wiki-content-border-color); } .ext-WikiEditor-ResizingDragBar:hover span { background-color: var(--wiki-content-text-mix-color); } .ext-WikiEditor-twopanes-TwoPaneLayout .ext-WikiEditor-twopanes-pane1, .ext-WikiEditor-twopanes-TwoPaneLayout .ext-WikiEditor-twopanes-pane2 { border-color: var(--wiki-content-border-color); } .ext-WikiEditor-realtimepreview-button.oo-ui-toggleWidget-on .oo-ui-labelElement-label { color: var(--wiki-accent-color); } .wikiEditor-ui-toolbar .group, .wikiEditor-ui-toolbar .section-secondary .group { border-color: var(--wiki-content-border-color); } .ext-WikiEditor-realtimepreview-button:hover { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); color: var(--wiki-accent-color); border-color:var(--wiki-accent-color); box-shadow:inset 0 0 3px var(--wiki-accent-color); } .oo-ui-toggleButtonWidget.oo-ui-widget-enabled.oo-ui-buttonElement-frameless.oo-ui-toggleWidget-on .oo-ui-buttonElement-button { background-color: var(--wiki-content-background-color--secondary); } .ext-WikiEditor-reloadButton.oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button, .ext-WikiEditor-reloadButton.oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-background-color); } .editOptions { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); border-image: none; border-radius: 0 0 5px 5px; border-style: none solid solid; border-width: medium 1px 1px; } input#wpSummary { margin-bottom: 1em; margin-top: 1em; width: 80%; } .view-dark .ace_editor, .ace_editor { --ace-keywords: #CDA869; --ace-regexp: #E9C062; --ace-constants: #CF6A4C; --ace-illegal: #F8F8F8; --ace-deprecated: #D2A8A1; --ace-support: #9B859D; --ace-function: #DAD085; --ace-list: #F9EE98; --ace-variable: #7587A6; --ace-string: #8F9D6A; --ace-illegal-highlight: rgba(86, 45, 86, 0.75); --ace-step-highlight: #665200; --ace-multiselect-shadow: #141414; } .view-light .ace_editor{ --ace-keywords: #00f; --ace-regexp: #036a07; --ace-constants: #c5060b; --ace-illegal: #f00; --ace-deprecated: #f00; --ace-support: #6d79de; --ace-function: #3c4c72; --ace-list: #b90690; --ace-variable: #318495; --ace-string: #036a07; --ace-illegal-highlight: rgba(255, 0, 0, 0.1); --ace-step-highlight: #fcff00; --ace-multiselect-shadow: #fff; } .ace_editor .ace_gutter { background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 85%, transparent); } .ace_gutter-cell { color:var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 40%, transparent); } .ace_editor .ace_print-margin { width: 1px; background:var(--wiki-content-dynamic-color--inverted); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 75%, transparent); } .ace_editor { /* this image gradient hack effectively lets the element have 2 layers of background */ background-image: linear-gradient(var(--wiki-content-dynamic-color), var(--wiki-content-dynamic-color)); background-color: var(--wiki-content-dynamic-color--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 93%, transparent); color: var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 93%, transparent); } .ace_editor .ace_cursor { color: var(--wiki-content-text-color); } .ace_editor .ace_marker-layer .ace_selection { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent) } .ace_editor.ace_multiselect .ace_selection.ace_start { box-shadow: 0 0 3px 0px var(--ace-multiselect-shadow); } .ace_editor .ace_marker-layer .ace_step { background: var(--ace-step-highlight); } .ace_editor .ace_marker-layer .ace_active-line, .ace_editor .ace_gutter-active-line { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 3.1%, transparent) } .ace-tm .ace_marker-layer .ace_selected-word { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .ace_editor .ace_marker-layer .ace_selection { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); } .ace_editor .ace_marker-layer .ace_selected-word { border: 1px solid var(--wiki-content-background-color--secondary); /* fallback */ border: 1px solid color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent); } .ace_editor .ace_invisible { color: var(--wiki-content-background-color--secondary); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 25%, transparent); } .ace_editor .ace_keyword, .ace_editor .ace_meta { color: var(--ace-keywords); } .ace_editor .ace_constant, .ace_editor .ace_constant.ace_numeric, .ace_editor .ace_constant.ace_character, .ace_editor .ace_constant.ace_character.ace_escape, .ace_editor .ace_constant.ace_other, .ace_editor .ace_heading, .ace_editor .ace_markup.ace_heading, .ace_editor .ace_support.ace_constant { color: var(--ace-constants); } .ace_editor .ace_invalid.ace_illegal { color: var(--ace-illegal); background-color: var(--ace-illegal-highlight); } .ace_editor .ace_invalid.ace_deprecated { text-decoration: underline; font-style: italic; color: var(--ace-deprecated); } .ace_editor .ace_support, .ace_editor .ace_support.ace_type { color: var(--ace-support); } .ace_editor .ace_fold { background-color: var(--wiki-content-dynamic-color--secondary--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); border-color: var(--wiki-content-dynamic-color--secondary--inverted); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); } .ace_editor .ace_support.ace_function { color: var(--ace-function); } .ace_editor .ace_list, .ace_editor .ace_markup.ace_list, .ace_editor .ace_storage { color: var(--ace-list); } .ace_editor .ace_entity.ace_name.ace_function, .ace_editor .ace_meta.ace_tag, .ace_editor .ace_variable { color: var(--ace-variable); } .ace_editor .ace_string { color: var(--ace-string); } .ace_editor .ace_string.ace_regexp { color: var(--ace-regexp); } .ace_editor .ace_comment { font-style: italic; color:var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 30%, transparent); } .ace_editor .ace_xml-pe { color:var(--wiki-content-dynamic-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color) 28%, transparent); } .ace_editor .ace_indent-guide { background:none; border-right:1px solid var(--wiki-content-dynamic-color); border-right:1px solid color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent); } .ace_search { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border: 1px solid var(--wiki-content-border-color); } .ace_search_field { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-mix-color); } .ace_button { color: var(--wiki-content-text-color); border: 1px solid var(--wiki-content-border-color); } .ace_button:hover { background-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .ace_button.checked { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .ace_searchbtn { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); border: 1px solid var(--wiki-content-border-color); } .ace_searchbtn:hover { background-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .ace_searchbtn.prev::after, .ace_searchbtn.next::after { border-color: var(--wiki-accent-label-color); } .ace_searchbtn_close { filter: var(--wiki-icon-general-filter); } .wikiEditor-ui .codeEditor-status { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .mw-editform #wpTextbox1 { background:var(--wiki-content-background-color); /* fallback */ background: color-mix(in srgb, var(--wiki-content-background-color) 50%, transparent); color: var(--wiki-content-text-color); } .view-dark .ext-codemirror-wrapper, .ext-codemirror-wrapper { --codemirror-yellow: #ffd700; --codemirror-light-blue: #adf; --codemirror-blue: #08f; --codemirror-green: #290; --codemirror-red: #f50; --codemirror-dark-red: #dd1616; --codemirror-purple: #CD4EF9; --codemirror-pink: #e0e; --codemirror-light-gray: #eee; --codemirror-gray: #84a0a0; } .view-light .ext-codemirror-wrapper { --codemirror-yellow: #9e8500; --codemirror-light-blue: #008ae7; --codemirror-blue: #0085f9; --codemirror-green: #290; --codemirror-red: #ef4f00; --codemirror-dark-red: #a11; --codemirror-purple: #80c; --codemirror-pink: #ed00ed; --codemirror-light-gray: #858585; --codemirror-gray: #6b8a8a; } .ext-codemirror-wrapper { background-color:var(--wiki-content-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color) 35%, transparent); color: var(--wiki-content-text-color) } .cm-editor .cm-selectionBackground, .cm-editor.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground { background: var(--wiki-accent-color); /* fallback */ background: color-mix(in srgb, var(--wiki-accent-color) 30%, transparent); } .cm-mw-keyword { color: var(--codemirror-purple) } .cm-mw-def { color: var(--codemirror-blue) } .cm-mw-variable-2 { color: var(--codemirror-light-blue) } .cm-mw-string { color: var(--codemirror-red) } .cm-mw-atom { color: var(--codemirror-pink) } .cm-mw-number { color: var(--codemirror-green) } .cm-mw-matching { background-color: var(--codemirror-yellow) } .cm-mw-skipformatting { background-color: var(--codemirror-light-blue) } .cm-mw-list { color: var(--codemirror-blue) } .cm-mw-doubleUnderscore, .cm-mw-hr, .cm-mw-signature { background-color: var(--wiki-content-background-color--secondary); color: var(--codemirror-blue) } .cm-mw-indenting { color: var(--codemirror-blue) } .cm-mw-mnemonic { color: var(--codemirror-green) } .cm-mw-comment { color: var(--codemirror-gray) } .cm-mw-apostrophes-bold, .cm-mw-apostrophes-italic, .cm-mw-section-header { color: var(--codemirror-blue) } .cm-mw-template, .cm-mw-template-argument-name, .cm-mw-template-bracket, .cm-mw-template-delimiter, .cm-mw-template-name { color: var(--codemirror-purple); } .cm-mw-templatevariable, .cm-mw-templatevariable-bracket, .cm-mw-templatevariable-delimiter, .cm-mw-templatevariable-name { color: var(--codemirror-red) } .cm-mw-parserfunction-bracket, .cm-mw-parserfunction-delimiter, .cm-mw-parserfunction-name { color: var(--codemirror-dark-red) } .cm-mw-exttag-attribute, .cm-mw-exttag-bracket, .cm-mw-exttag-name, .cm-mw-htmltag-attribute, .cm-mw-htmltag-bracket, .cm-mw-htmltag-name { color: var(--codemirror-green) } .cm-mw-link, .cm-mw-link-pagename { color: var(--wiki-content-link-color) } .cm-mw-link-tosection { color: var(--codemirror-blue) } .cm-mw-extlink, .cm-mw-extlink-bracket, .cm-mw-extlink-protocol, .cm-mw-free-extlink, .cm-mw-free-extlink-protocol, .cm-mw-link-bracket, .cm-mw-link-delimiter { color: var(--wiki-content-link-color) } .cm-mw-table-bracket, .cm-mw-table-definition, .cm-mw-table-delimiter { color: var(--codemirror-pink) } .cm-mw-matchingbracket { background-color: var(--wiki-content-background-color--secondary); box-shadow: inset 0 0 1px 1px var(--wiki-content-link-color); font-weight: bold; } /* VisualEditor: Fix broken toolbar layout */ .oo-ui-toolbar { clear: none; } .ve-init-mw-desktopArticleTarget-toolbar-open > .oo-ui-toolbar-bar > div:nth-child(4) { display: none; } .ve-ui-toolbar-floating > .oo-ui-toolbar-bar { top: var( --wikigg-header-height ); } .oo-ui-toolbar-bar .oo-ui-toolbar-bar, .ve-area-wrapper .oo-ui-toolbar-bar { background-color: var(--wiki-content-background-color--secondary); } .ve-init-mw-desktopArticleTarget-originalContent .content-body { clear: right; } /* fix a lot of empty space from TemplateData when using VE Source */ .tdg-editscreen-main.mw-body-content::after { display:none; } /************* * End editor * **************/ /**************** * Tabber styles * *****************/ .tabber__header { box-shadow: inset 0 -1px 0 0 var(--wiki-content-border-color); } .tabber__tab, .tabber__tab:visited { color:var(--wiki-content-text-color); } .tabber__tab:hover, .tabber__tab:hover:visited, .tabber__tab[aria-selected="true"], .tabber__tab[aria-selected="true"]:visited { color: var(--wiki-content-link-color); } .tabber__tab[aria-selected="true"] { box-shadow: 0 -2px 0 var(--wiki-content-link-color) inset; } .tabber__header__prev::after, .tabber__header__next::after { filter: var(--wiki-icon-general-filter); } /******************** * End Tabber styles * *********************/ /*************************************** * Various fixes for multi-theme Vector * ****************************************/ :focus, :focus-visible { outline-color:var(--wiki-accent-color) } :focus-visible { outline-style:solid; } .oo-ui-iconElement-icon { filter: var(--wiki-icon-to-link-filter); } .oo-ui-iconElement-icon.oo-ui-icon-reload { filter: brightness(0) var(--wiki-icon-to-link-filter); } fieldset { border-color:var(--wiki-content-border-color); } hr { background-color:var(--wiki-content-border-color); } .CategoryTreeToggle { color:var(--wiki-content-link-color); } input, select { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } input:hover, input:focus, input:active { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-accent-color); box-shadow: none; } input:focus-visible { outline: 1px solid var(--wiki-accent-color); } input::file-selector-button, input[type="button"], input[type="submit"] { background-color:var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .vector-body blockquote { border-color:var(--wiki-content-border-color); } /* category bar and filetoc */ .catlinks, ul#filetoc { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } /**/ body .ui-dialog .ui-widget-header { /* we need an important here because the built-in styles have one :( */ background: var(--wiki-content-background-color) !important; border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .ui-widget-header .ui-dialog-titlebar-close .ui-icon-closethick { filter: var(--wiki-icon-general-filter); } .ui-widget-header .ui-dialog-titlebar-close.ui-state-hover { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .ui-widget-content { background: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border: 1px solid var(--wiki-content-border-color); } body .ui-button { /* we need an important here because the built-in styles have one. Vector is a mess */ background: var(--wiki-accent-color) !important; border-color: var(--wiki-accent-color) !important; color: var(--wiki-accent-label-color); } body .ui-button:hover, body .ui-button:focus, body .ui-button:active { /* we need an important here because we had to use some above */ background: var(--wiki-accent-color--hover) !important; border-color: var(--wiki-accent-color--hover) !important; color: var(--wiki-accent-label-color); } .ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { color: var(--wiki-accent-label-color); } #contentSub, #contentSub2 { color:var(--wiki-content-text-mix-color); } /* notifications ("your edit was saved", etc.) */ .mw-notification { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); } .mw-notification .oo-ui-labelElement-label { color:var(--wiki-content-text-color); } .mw-notification .oo-ui-iconElement-icon { filter:unset; } /**/ .mime-type.has-warning { color:var(--wiki-content-text-color); } .oo-ui-image-warning.oo-ui-icon-alert, .mw-ui-icon-alert-warning::before { filter:drop-shadow(0 0 3px #000); } .oo-ui-image-invert.oo-ui-icon-subtract, .mw-ui-icon-subtract-invert::before, .oo-ui-image-invert.oo-ui-icon-add, .mw-ui-icon-add-invert::before { filter:brightness(0) var(--wiki-icon-to-link-filter); filter:var(--wiki-icon-general-filter); } .mw_metadata td, .mw_metadata th { border-color: var(--wiki-content-border-color); } .mw_metadata th { background-color: var(--wiki-content-background-color--secondary); } .mw_metadata td { background-color: var(--wiki-content-background-color); } .mw-datatable td, .mw-datatable th { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } #mw-allmessagestable tbody:hover td, .mw-datatable tr:hover>td { background-color: var(--wiki-content-background-color--secondary); } #mw-allmessagestable .am_default { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 80%, transparent); color: var(--wiki-accent-label-color); } #mw-allmessagestable .am_actual, #mw-allmessagestable tbody:hover .am_default { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 60%, transparent); } #mw-allmessagestable .am_actual { color: var(--wiki-accent-label-color); } #mw-allmessagestable tbody:hover .am_actual { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .mw-datatable, .mw-json { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: inherit; } .mw-datatable>*>tr>th, .mw-datatable>tr>th, .mw-json>*>tr>th, .mw-json>tr>th { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); padding-bottom: 9px; padding-top: 9px; } .mw-datatable>*>tr>td, .mw-datatable>tr>td, .mw-json>*>tr>td, .mw-json>tr>td { border-color: var(--wiki-content-border-color); } .mw-json tr { background-color: inherit; } .mw-json .mw-json-single-value, .mw-json .mw-json-value, .mw-json .value { background: var(--wiki-success-color); /* fallback */ background: color-mix(in srgb, var(--wiki-success-color) 60%, transparent); } .mw-json .mw-json-empty { background: var(--wiki-content-background-color--secondary); } .mw-message-box, .mw-message-box-warning { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); } .mw-message-box-warning { border-color: var(--wiki-warning-color); border-width: 1px 1px 1px 10px; } .wikitable *, .wikitable :after, .wikitable :before { -webkit-box-sizing: inherit; box-sizing: inherit; } .cargo-pagevalues-tableinfo { background-color: var(--wiki-content-background-color); border-bottom: 1px solid var(--wiki-content-border-color); top: 46px; position: static; /* override sticky in the built-in */ } .cargo-table-diagram .cargo-table-svg .node.entity-name rect { fill: var(--wiki-content-background-color--secondary); fill-opacity: 1; } .cargo-table-diagram .cargo-table-svg .node rect { stroke: var(--wiki-content-border-color); opacity: 1; } .cargo-table-diagram .cargo-table-svg .node text tspan { fill: var(--wiki-content-text-color); } table.cargoTable { color: var(--wiki-content-text-color); } table.cargoTable tbody td, table.cargoTable thead th { border: 1px solid var(--wiki-content-border-color); } table.cargoTable tr:hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 25%, transparent); } table.cargoTable thead tr:nth-child(odd), table.cargoTable.noMerge thead tr:nth-child(odd) { background-color: var(--wiki-accent-color); } table.cargoTable tbody tr:nth-child(2n), table.cargoTable.noMerge tbody tr:nth-child(2n) { background-color: var(--wiki-content-background-color); } table.cargoTable tbody tr:nth-child(odd), table.cargoTable.noMerge tbody tr:nth-child(odd) { background-color: var(--wiki-content-background-color--secondary); } table.cargoTable th.headerSort { color:var(--wiki-accent-label-color); } table.cargoTable th.headerSort:hover { color:var(--wiki-accent-label-color); text-decoration:underline; } table.cargoTable th.headerSort::after { background-color:var(--wiki-accent-link-color); } #mw-content-text div.cargoReplacementTableInfo { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); }.dataTables_wrapper .dataTables_length, .dataTables_wrapper .dataTables_filter, .dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_processing, .dataTables_wrapper .dataTables_paginate { color:var(--wiki-content-text-color); } table.dataTable tbody tr { background-color:var(--wiki-content-background-color); } table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 75%, transparent); } table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd, table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); } table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 { background-color:var(--wiki-content-background-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color) 75%, transparent); } table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover { background-color: var(--wiki-content-background-color--secondary); } .dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active { /* we need this !important to override a built-in one */ color: var(--wiki-content-text-mix-color) !important; } table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td { border-top: 1px solid var(--wiki-content-border-color); } .dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { /* we need this !important to override a built-in one */ color: var(--wiki-content-mix-color) !important; border: 1px solid var(--wiki-content-border-color); background-color: var(--wiki-content-background-color); background: linear-gradient(to bottom,var(--wiki-content-background-color) 0%,var(--wiki-content-background-color--secondary) 100%); } div.drilldown-filters-wrapper { background-color: transparent; border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .action-pagevalues tr:nth-of-type(2n) { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); } .action-pagevalues tr:hover { background-image: linear-gradient(var(--wiki-accent-color), var(--wiki-accent-color)); /* fallback */ background-image: linear-gradient(color-mix(in srgb, var(--wiki-accent-color) 20%, transparent), color-mix(in srgb, var(--wiki-accent-color) 20%, transparent)); } div.specialCargoQuery-extraPane { background: var(--wiki-content-background-color); } .oo-ui-panelLayout-framed { border-color:var(--wiki-content-border-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button { background-color: transparent; } .oo-ui-inputWidget-input + .oo-ui-image-invert.oo-ui-icon-check { background-image:none; } .oo-ui-inputWidget-input:checked + .oo-ui-image-invert.oo-ui-icon-check::before { position:absolute; width:100%; height:100%; top:0; left:0; background-image: url(/load.php?modules=oojs-ui-core.icons&image=check&variant=invert&format=rasterized&skin=vector&version=y9f1k); background-image: linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E"); content:''; pointer-events: none; filter:var(--wiki-icon-general-filter); } .oo-ui-checkboxInputWidget [type="checkbox"] + span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked + span { filter: unset; background-color: transparent; /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 5%, transparent); border-color: var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 75%, transparent); } .oo-ui-checkboxInputWidget [type="checkbox"]:disabled + span { background-color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:hover+span { border-color: var(--wiki-accent-color); filter: unset; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate+span { background-color: var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:focus+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:focus+span { box-shadow: none; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:active+span { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:focus+span { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); outline: 1px solid transparent; } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:focus+span { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:hover+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:active+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:focus+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:hover+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:active+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:checked:focus+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:hover+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:active+span, .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:indeterminate:focus+span { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); border-color: var(--wiki-accent-color); } .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type="checkbox"]:active + span { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent) } .oo-ui-image-invert.oo-ui-icon-check { background:none; position:relative; } .oo-ui-inputWidget-input:checked + .oo-ui-image-invert.oo-ui-icon-check::before { position:absolute; width:100%; height:100%; top:0; left:0; background-image: url(/load.php?modules=oojs-ui-core.icons&image=check&variant=invert&format=rasterized&skin=vector&version=y9f1k); background-image: linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E%3Ctitle%3E check %3C/title%3E%3Cg fill=%22%23fff%22%3E%3Cpath d=%22M7 14.2 2.8 10l-1.4 1.4L7 17 19 5l-1.4-1.4z%22/%3E%3C/g%3E%3C/svg%3E"); content:''; pointer-events: none; filter:var(--wiki-icon-general-filter); } .oo-ui-indicatorElement-indicator { filter: var(--wiki-icon-to-link-filter); } .oo-ui-tagItemWidget.oo-ui-widget-enabled:not(.oo-ui-tagItemWidget-fixed) { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-tagItemWidget.oo-ui-widget-enabled:hover { color: var(--wiki-content-text-color--hover); } .oo-ui-tagItemWidget.oo-ui-widget-enabled:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-tagItemWidget.oo-ui-widget-disabled { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .client-js .mw-recentchanges-toplinks:not(.mw-recentchanges-toplinks-collapsed) { border-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-savedLinksListWidget-placeholder.oo-ui-optionWidget .oo-ui-labelElement-label { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-savedLinksListWidget-menu .mw-rcfilters-ui-savedLinksListItemWidget { color: var(--wiki-content-text-color); padding: 8px 6px; -webkit-transition: color .3s, background-color .3s; transition: color .3s, background-color .3s; } .mw-rcfilters-ui-savedLinksListWidget-menu .mw-rcfilters-ui-savedLinksListItemWidget:hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); color: var(--wiki-accent-color); } .mw-rcfilters-ui-savedLinksListItemWidget-label { color: var(--wiki-accent-color); } .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined { background-color: transparent; } .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle { border-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle+.mw-rcfilters-ui-table, .mw-rcfilters-ui-filterTagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle.mw-rcfilters-ui-filterTagMultiselectWidget-emphasize { background-color: var(--wiki-content-background-color--secondary); } .mw-rcfilters-ui-filterTagMultiselectWidget-views-select-widget.oo-ui-widget { border-color: var(--wiki-content-border-color); padding: 0; } .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-filterTagMultiselectWidget-wrapper-content-savedQueryTitle { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button>.oo-ui-labelElement-label { color: var(--wiki-content-link-color); } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button>.oo-ui-labelElement-label:hover { color: var(--wiki-content-link-color--hover); } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button:before { content: "["; } .mw-rcfilters-ui-filterTagMultiselectWidget-hideshowButton .oo-ui-buttonElement-button:after { content: "]"; } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive>.oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-dynamic-color--inverted); } .mw-rcfilters-ui-filterTagMultiselectWidget-emptyFilters { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .mw-rcfilters-ui-filterMenuSectionOptionWidget { background-color: var(--wiki-content-background-color); } .oo-ui-menuSelectWidget { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-text-mix-color); } .mw-rcfilters-ui-filterMenuSectionOptionWidget-header-title.oo-ui-labelElement-label { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-filterMenuHeaderWidget-header { background-color: var(--wiki-content-background-color); border-bottom-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-filterMenuHeaderWidget-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget:not(:last-child):not(.mw-rcfilters-ui-itemMenuOptionWidget-identifier-talk) { border-bottom-color: var(--wiki-content-text-mix-color); } .mw-rcfilters-ui-itemMenuOptionWidget-view-namespaces { border-top-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-title, .mw-rcfilters-ui-itemMenuOptionWidget:hover, .mw-rcfilters-ui-itemMenuOptionWidget:hover .mw-rcfilters-ui-itemMenuOptionWidget-label-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span, .mw-rcfilters-ui-itemMenuOptionWidget:hover .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span { border-color: var(--wiki-accent-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected, .mw-rcfilters-ui-itemMenuOptionWidget:hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent) } .mw-rcfilters-ui-itemMenuOptionWidget-excludeLabel, .mw-rcfilters-ui-itemMenuOptionWidget-label-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget-label-desc { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected:hover, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected):hover { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-title, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) .mw-rcfilters-ui-itemMenuOptionWidget-label-title { color: var(--wiki-content-text-color); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-desc { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-optionWidget-selected .mw-rcfilters-ui-itemMenuOptionWidget-label-desc, .mw-rcfilters-ui-itemMenuOptionWidget:hover .mw-rcfilters-ui-itemMenuOptionWidget-label-desc, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) .mw-rcfilters-ui-itemMenuOptionWidget-label-desc { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted.oo-ui-optionWidget-selected .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span, .mw-rcfilters-ui-itemMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) .oo-ui-checkboxInputWidget.oo-ui-widget-enabled [type=checkbox]+span { border-color: var(--wiki-content-text-color); } .mw-rcfilters-ui-viewSwitchWidget label.oo-ui-labelWidget { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .oo-ui-tagItemWidget.oo-ui-widget-enabled, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled { background-color: transparent; color: var(--wiki-content-text-color); border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagItemWidget.oo-ui-widget-enabled.selected { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); border-color: var(--wiki-accent-color); } .mw-rcfilters-ui-datePopupWidget { border-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-datePopupWidget .mw-rcfilters-ui-valuePickerWidget-title { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .mw-changeslist-legend, .mw-rcfilters-ui-changesListWrapperWidget .mw-changeslist-legend { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } @keyframes fadeBlue { 60% { border-top-color:var(--wiki-accent-color); } 100% { border-top-color:var(--wiki-content-border-color); } } .mw-rcfilters-ui-changesListWrapperWidget-previousChangesIndicator { border-top-color: var(--wiki-content-border-color); } .mw-rcfilters-ui-menuSelectWidget-footer { background-color: var(--wiki-content-text-mix-color-95); } .mw-rcfilters-ui-filterMenuOptionWidget.oo-ui-flaggedElement-muted:not(.oo-ui-optionWidget-selected) { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-text-color) 10%, transparent); } .oo-ui-iconElement-icon.mw-rcfilters-ui-filterItemHighlightButton-circle { filter:unset; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .mw-rcfilters-ui-tagItemWidget-selected.oo-ui-tagItemWidget.oo-ui-widget-enabled { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); border-color:var(--wiki-accent-color); } .mw-rcfilters-ui-tagItemWidget.oo-ui-flaggedElement-muted.oo-ui-tagItemWidget.oo-ui-widget-enabled .oo-ui-labelElement-label { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 76%, transparent); } .mw-rcfilters-ui-tagItemWidget-popup-content { color: var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 75%, transparent); } /* fix for weird focus box on recentchanges arrows when clicking, but keep it for tab navigation */ .mw-enhancedchanges-checkbox:focus + * .mw-enhancedchanges-arrow { outline:none; } .mw-enhancedchanges-checkbox:focus-visible + * .mw-enhancedchanges-arrow { outline:1px solid var(--wiki-accent-color); } /**/ .oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:before { border-top-color: var(--wiki-content-border-color); } .oo-ui-popupWidget-anchored-bottom .oo-ui-popupWidget-anchor:after { border-top-color: var(--wiki-content-background-color--secondary); } .unpatrolled { color: var(--wiki-alert-color); } .autocomment, .autocomment a, .autocomment a:visited { color: var(--wiki-content-text-mix-color); } /* Recent changes filter highlighting */ .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c1, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c1 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c1.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c1.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #1c283f; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c2, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c2 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c2.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c2.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #0f3128; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c3, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c3 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c3.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c3.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #352c10; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c4, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c4 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c4.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c4.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #411d0c; } .view-dark .mw-rcfilters-ui-changesListWrapperWidget li.mw-rcfilters-highlight-color-c5, .view-dark .mw-rcfilters-ui-changesListWrapperWidget .mw-rcfilters-highlight-color-c5 tr:first-child, .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c5.mw-rcfilters-ui-highlights-enhanced-toplevel:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+2)), .view-dark .mw-rcfilters-ui-changesListWrapperWidget tr.mw-rcfilters-highlight-color-c5.mw-rcfilters-ui-highlights-enhanced-nested:not(.mw-rcfilters-ui-changesListWrapperWidget-enhanced-grey) td:not(:nth-child(-n+4)) { background-color: #3f0f0f; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined { background-color: transparent; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled .oo-ui-tagMultiselectWidget-handle { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); -webkit-transition: border-color 300ms, box-shadow 300ms; transition: border-color 300ms, box-shadow 300ms; background-color: var(--wiki-content-background-color--secondary) } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-tagMultiselectWidget-focus .oo-ui-tagMultiselectWidget-handle { box-shadow: inset 0 0 0 1px var(--wiki-accent-color); border-color: var(--wiki-accent-color); outline: 0 } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined:hover .oo-ui-tagMultiselectWidget-handle { border-color: var(--wiki-accent-color) } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-flaggedElement-invalid .oo-ui-tagMultiselectWidget-handle, .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-inlined.oo-ui-flaggedElement-invalid:hover .oo-ui-tagMultiselectWidget-handle { border-color: var(--wiki-alert-color) } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-tagMultiselectWidget-handle { background-color: var(--wiki-content-background-color--secondary); border-bottom-width: 0; border-bottom-left-radius: 0; border-bottom-right-radius: 0 } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined .oo-ui-inputWidget-input { border-radius: 0; } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-tagMultiselectWidget-outlined.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input { border-color: var(--wiki-alert-color); } .oo-ui-tagMultiselectWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input { color: var(--wiki-alert-color); } .oo-ui-tagMultiselectWidget.oo-ui-widget-disabled .oo-ui-tagMultiselectWidget-handle { opacity: 0.5; } .oo-ui-tagMultiselectWidget-handle .oo-ui-tagMultiselectWidget-group > input { color:var(--wiki-content-text-color); } .oo-ui-tagMultiselectWidget .oo-ui-inputWidget-input { color: inherit; background: transparent; font-family: inherit; } .oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle, .oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input, .oo-ui-dropdownWidget.oo-ui-widget-disabled .oo-ui-dropdownWidget-handle { background: var(--wiki-content-text-mix-color-95); color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 25%, transparent); text-shadow:none; border-color:var(--wiki-content-text-mix-color); } .oo-ui-textInputWidget.oo-ui-widget-enabled .oo-ui-inputWidget-input::placeholder { color:var(--wiki-content-text-mix-color); } .oo-ui-dropdownInputWidget select { border-color:var(--wiki-content-border-color); } .oo-ui-dropdownInputWidget.oo-ui-widget-enabled select:focus { border-color:var(--wiki-accent-color); box-shadow:inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover { background-color: var(--wiki-content-text-mix-color-95); background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 95%, var(--wiki-content-dynamic-color)); border-color: var(--wiki-content-border-color); border-color: color-mix(in srgb, var(--wiki-content-border-color) 95%, var(--wiki-content-dynamic-color)); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled .oo-ui-toggleSwitchWidget-grip { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); border-color: #0006; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:hover .oo-ui-toggleSwitchWidget-grip { background-color: var(--wiki-accent-color); background-color: color-mix(in srgb, var(--wiki-accent-color) 90%, var(--wiki-content-dynamic-color)); border-color: #0006; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on .oo-ui-toggleSwitchWidget-grip { background-color: var(--wiki-accent-label-color); border-color: #0006; } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus .oo-ui-toggleSwitchWidget-grip { border-color: var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:hover { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); box-shadow: inset 0 0 0 1px var(--wiki-accent-color--hover); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active .oo-ui-toggleSwitchWidget-grip, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:hover .oo-ui-toggleSwitchWidget-grip, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:active:focus .oo-ui-toggleSwitchWidget-grip { background-color: var(--wiki-accent-label-color); border-color: var(--wiki-accent-label-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active, .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:active:hover { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus { border-color: var(--wiki-accent-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-enabled.oo-ui-toggleWidget-on:focus::before { border-color: var(--wiki-accent-label-color); } .oo-ui-toggleSwitchWidget.oo-ui-widget-disabled { background-color: var(--wiki-content-text-mix-color-95); border-color: var(--wiki-content-text-mix-color-95); } .oo-ui-toggleSwitchWidget.oo-ui-widget-disabled.oo-ui-toggleWidget-off .oo-ui-toggleSwitchWidget-grip { border-color: var(--wiki-content-dynamic-color--inverted); box-shadow: inset 0 0 0 1px var(--wiki-content-dynamic-color--inverted); } .oo-ui-outlineOptionWidget.oo-ui-optionWidget-selected, .oo-ui-outlineOptionWidget.oo-ui-optionWidget-highlighted { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-link-color); } .oo-ui-labelWidget.oo-ui-inline-help { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); } .oo-ui-progressBarWidget:not(.oo-ui-pendingElement-pending){ background-color: var(--wiki-content-background-color); border-color: var(--wiki-accent-color); box-shadow:0 1px 1px var(--wiki-content-dynamic-color); /* fallback */ box-shadow: 0 1px 1px color-mix(in srgb, var(--wiki-content-dynamic-color) 15%, transparent); } .oo-ui-progressBarWidget.oo-ui-widget-enabled .oo-ui-progressBarWidget-bar { background-color:var(--wiki-accent-color); } .oo-ui-bookletLayout-outlinePanel { padding: 7px 0; } .oo-ui-processDialog-content .oo-ui-window-head, .oo-ui-processDialog-content .oo-ui-window-foot, .oo-ui-messageDialog-content > .oo-ui-window-head, .oo-ui-messageDialog-content > .oo-ui-window-foot { outline-color: var(--wiki-content-border-color); } .oo-ui-messageDialog-actions-horizontal .oo-ui-actionWidget { border-right-color: var(--wiki-content-border-color); } .oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) > .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-background-color); border-right-color: var(--wiki-content-border-color); } .oo-ui-messageDialog-title { color: var(--wiki-heading-color); } /* OAuth authorisation dialog */ #mw-mwoauth-authorize-form { color: inherit; } .oo-ui-toolbar-bar, .oo-ui-popupToolGroup-tools, .oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled:hover { background-color:var(--wiki-content-background-color--secondary); color:var(--wiki-content-text-color); } .oo-ui-toolbar-actions .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover { border-right-color:var(--wiki-content-border-color); } .oo-ui-menuToolGroup-tools .oo-ui-tool.oo-ui-tool-active, .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:active, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-tool-active > .oo-ui-tool-link, .oo-ui-tool.oo-ui-widget-enabled.oo-ui-popupToolGroup-active > .oo-ui-tool-link, .oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle { background-color: var(--wiki-content-background-color); color: var(--wiki-content-link-color); } .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link { /* we remove the transition here because it causes the hard-coded color to flash briefly */ transition:none; } .oo-ui-popupToolGroup.oo-ui-popupToolGroup-active > .oo-ui-popupToolGroup-handle:hover { color:var(--wiki-accent-color); } .oo-ui-popupToolGroup-tools .oo-ui-tool-active.oo-ui-widget-enabled .oo-ui-tool-link .oo-ui-tool-title { color:var(--wiki-accent-color); } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:hover, .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:hover { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:active { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 15%, transparent); } .oo-ui-popupToolGroup-tools .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus { box-shadow:inset 0 0 0 2px var(--wiki-accent-color); } .oo-ui-popupToolGroup.oo-ui-widget-enabled > .oo-ui-popupToolGroup-handle:focus, .oo-ui-tool.oo-ui-widget-enabled .oo-ui-tool-link:focus, .oo-ui-tool.oo-ui-widget-enabled > .oo-ui-tool-link:focus { outline:1px solid var(--wiki-accent-color); box-shadow:inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-menuToolGroup, .oo-ui-popupToolGroup-tools { border-color:var(--wiki-content-border-color); } .oo-ui-toolbar-position-top > .oo-ui-toolbar-bar { border-color: var(--wiki-content-border-color); box-shadow:0 1px 1px 0 var(--wiki-content-dynamic-color--secondary--inverted); /* fallback */ box-shadow: 0 1px 1px 0 color-mix(in srgb, var(--wiki-content-dynamic-color) 10%, transparent); } .oo-ui-barToolGroup-tools.oo-ui-toolGroup-enabled-tools .oo-ui-tool.oo-ui-widget-disabled.oo-ui-flaggedElement-primary > .oo-ui-tool-link, .oo-ui-barToolGroup-tools.oo-ui-toolGroup-disabled-tools .oo-ui-tool.oo-ui-flaggedElement-primary > .oo-ui-tool-link { background-color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link { background-color:var(--wiki-accent-color); color:var(--wiki-accent-label-color); } .oo-ui-tool.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-tool-link:hover { background-color:var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-frameless>.oo-ui-buttonElement-button, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { color: var(--wiki-content-text-color--hover); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { color: var(--wiki-content-text-color--hover); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive>.oo-ui-buttonElement-button, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button{ color: var(--wiki-alert-color); } .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled>.oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled>.oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled>.oo-ui-buttonElement-button:focus { color: var(--wiki-alert-color--hover); } .oo-ui-buttonElement-frameless>.oo-ui-buttonElement-button { border: 1px solid transparent; } .oo-ui-buttonElement-frameless>button.oo-ui-buttonElement-button { color: inherit; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color),inset 0 0 0 2px var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button { background-color: #bf0017; border-color: #bf0017; color: #fff; } .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-primary.oo-ui-flaggedElement-destructive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: #59000b; border-color: #59000b; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active > .oo-ui-buttonElement-button:focus { box-shadow: inset 0 0 0 1px var(--wiki-accent-color--hover),inset 0 0 0 2px var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color--hover); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-active.oo-ui-flaggedElement-progressive.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:hover, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button{ background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-link-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-active > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-popupToolGroup-active > .oo-ui-buttonElement-button { color: var(--wiki-accent-color); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > input.oo-ui-buttonElement-button, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled > .oo-ui-buttonElement-button:active { background-color:var(--wiki-content-link-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-link-color) 8%, transparent); color: var(--wiki-content-text-color); border-color: var(--wiki-content-text-mix-color); } .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive > .oo-ui-buttonElement-button:active, .oo-ui-buttonElement-frameless.oo-ui-widget-enabled.oo-ui-flaggedElement-progressive.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { color:var(--wiki-content-link-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-link-color) 90%, transparent); border-color:var(--wiki-content-link-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-link-color) 90%, transparent); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { background-color: transparent; } .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-flaggedElement-destructive > .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-dynamic-color--inverted); } .oo-ui-buttonSelectWidget.oo-ui-widget-enabled:focus .oo-ui-buttonOptionWidget.oo-ui-optionWidget-selected .oo-ui-buttonElement-button { border-color: var(--wiki-accent-color--hover); box-shadow: inset 0 0 0 1px var(--wiki-accent-color--hover),inset 0 0 0 2px var(--wiki-accent-label-color); } .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:nth-child(2n) td, .mw-htmlform-ooui .mw-htmlform-matrix tbody tr:hover td { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-popupWidget-popup { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color:var(--wiki-content-text-color); } .mw-advancedSearch-namespace-selection { background: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); } .mw-advancedSearch-fieldContainer { background: var(--wiki-content-background-color); border: 1px solid var(--wiki-content-border-color); } .mw-advancedSearch-fieldContainer fieldset { border-color: var(--wiki-content-border-color); margin-top: 0; } .mw-advancedSearch-fieldContainer .oo-ui-labelElement > .oo-ui-fieldsetLayout-header > .oo-ui-labelElement-label { all: unset; } .mw-advancedSearch-expandablePane-button.oo-ui-widget-enabled.oo-ui-buttonWidget > .oo-ui-buttonElement-button:hover { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); color: var(--wiki-content-text-color); } .mw-advancedSearch-expandablePane-button.oo-ui-widget-enabled.oo-ui-buttonWidget.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-popupWidget-popup .mw-advancedSearch-tooltip-head { color: var(--wiki-content-text-mix-color); } .oo-ui-menuSectionOptionWidget { color: var(--wiki-content-text-mix-color); } /* possibly deprecated */ .mw-ui-button:not(:disabled) { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color: var(--wiki-accent-color); border-color: var(--wiki-content-border-color); } .mw-ui-button:not(:disabled):visited { color: var(--wiki-accent-color); } .mw-ui-button:not(:disabled):hover { background-color: var(--wiki-content-text-mix-color-95); border-color: var(--wiki-content-border-color); color: var(--wiki-accent-color--hover); } .mw-ui-button:not(:disabled):focus { border-color: var(--wiki-accent-color); color: var(--wiki-content-text-color); box-shadow: none; } .mw-ui-button:not(:disabled):active, .mw-ui-button:not(:disabled).is-on { background-color: var(--wiki-content-background-color); color: var(--wiki-content-dynamic-color); border-color: var(--wiki-content-link-color); } /* end possibly deprecated */ .mw-ui-icon-before::before { filter: var(--wiki-icon-to-link-filter); } .oo-ui-windowManager-modal > .oo-ui-dialog > .oo-ui-window-frame { background-color: var(--wiki-content-background-color); color: var(--wiki-content-text-color); border-color: var(--wiki-content-border-color); } .oo-ui-windowManager-modal>.oo-ui-dialog { background-color:var(--wiki-content-dynamic-color--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 50%, transparent); } .oo-ui-windowManager-modal.oo-ui-windowManager-floating > .oo-ui-dialog > .oo-ui-window-frame { border-color:var(--wiki-content-border-color); } .oo-ui-messageDialog-message { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-framed:not(.oo-ui-flaggedElement-primary):not(.oo-ui-buttonElement-active) > .oo-ui-buttonElement-button { color: var(--wiki-content-text-color); } .oo-ui-buttonElement-framed.oo-ui-widget-disabled:not(.oo-ui-flaggedElement-primary):not(.oo-ui-buttonElement-active) > .oo-ui-buttonElement-button { color: var(--wiki-content-text-mix-color-95); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button { color: var(--wiki-accent-color); border-color:var(--wiki-accent-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { color: var(--wiki-accent-color--hover); border-color: var(--wiki-accent-color); box-shadow: inset 0 0 3px var(--wiki-accent-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled>.oo-ui-buttonElement-button:active, .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-buttonElement-pressed > .oo-ui-buttonElement-button { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-link-color--hover); border-color: var(--wiki-content-link-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .oo-ui-buttonElement-framed.oo-ui-widget-disabled > .oo-ui-buttonElement-button, .oo-ui-buttonElement-framed.oo-ui-widget-disabled.oo-ui-flaggedElement-primary > .oo-ui-buttonElement-button { background-color: var(--wiki-content-text-mix-color); border-color: var(--wiki-content-text-mix-color); } .tdg-templateDataParamWidget-param-description { color: var(--wiki-content-text-mix-color); } .oo-ui-messageWidget.oo-ui-flaggedElement-error:not(.oo-ui-messageWidget-block), .mw-body-content .error { color: var(--wiki-alert-color); } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-error { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-alert-color); border-left-width: 10px; } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-warning { background-color: var(--wiki-content-background-color--secondary); } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-success { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-success-color); border-left-width: 10px; } .oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-text-mix-color); } .tdg-templateDataParamWidget-param-alias { color: var(--wiki-content-text-mix-color); background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } .tdg-templateDataParamWidget-param-alias:first-child { background-color: var(--wiki-content-background-color--secondary); } .mw-templatedata-doc-muted { color: var(--wiki-content-text-mix-color); } .oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) > .oo-ui-buttonElement-button:active { background-color: var(--wiki-content-background-color--secondary); border-right-color: var(--wiki-accent-color); } /* Date picker */ .mw-widget-dateInputWidget-handle { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:hover { border-color: var(--wiki-accent-color); box-shadow: none; } .mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .mw-widget-dateInputWidget.oo-ui-widget-enabled .mw-widget-dateInputWidget-handle > .oo-ui-labelElement-label { color: var(--wiki-content-text-color); } .mw-widget-calendarWidget { border-color: var(--wiki-content-border-color); } .mw-widget-calendarWidget:focus { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .mw-widget-dateInputWidget-calendar { background-color: var(--wiki-content-background-color); } .mw-widget-dateInputWidget-calendar:focus { box-shadow: inset 0 0 0 1px var(--wiki-accent-color),0 2px 2px 0 rgba(0,0,0,0.2); } .mw-widget-calendarWidget-header .oo-ui-labelElement-label, .mw-widget-calendarWidget-day, .mw-widget-calendarWidget-month, .mw-widget-calendarWidget-year { color: var(--wiki-content-text-color); } .mw-widget-calendarWidget-day-heading, .mw-widget-calendarWidget-day-additional { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 55%, transparent); } .mw-widget-calendarWidget-day-today { box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .mw-widget-calendarWidget-item-selected { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 90%, transparent); color: var(--wiki-accent-label-color); } .mw-widget-calendarWidget-item:hover { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .mw-widgets-datetime-calendarWidget:focus { border-color: var(--wiki-content-border-color); box-shadow: none; } .mw-widgets-datetime-calendarWidget-grid { overflow-x: initial; } .mw-widgets-datetime-dateTimeInputWidget-handle { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-handle:hover { border-color: var(--wiki-content-border-color); } .mw-widgets-datetime-dateTimeInputWidget.oo-ui-widget-enabled .mw-widgets-datetime-dateTimeInputWidget-editField:hover { background-color: var(--wiki-content-background-color); } .mw-widgets-datetime-calendarWidget { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } .mw-widgets-datetime-calendarWidget-grid .mw-widgets-datetime-calendarWidget-cell.mw-widgets-datetime-calendarWidget-extra .oo-ui-buttonElement-button .oo-ui-labelElement-label { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 55%, transparent); } /* Unpatrolled page creations on Special:NewPages */ .not-patrolled { background-color:var(--wiki-warning-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 16%, transparent); } .mw-spinner-container > div::after { background-color:var(--wiki-content-text-color); } pre, code, .mw-code { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-templatedata-doc-param-alias { color:var(--wiki-content-text-mix-color); } .mw-highlight, .view-light .mw-highlight { --pygments-background:var(--wiki-content-background-color--secondary); /* fallback */ --pygments-background: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); --pygments-err: #db0000; --pygments-c: #3a7575; --pygments-k: #008000; --pygments-o: #666; --pygments-ch: #3a7575; --pygments-cm: #3a7575; --pygments-cp: #986200; --pygments-cpf: #3a7575; --pygments-c1: #3a7575; --pygments-cs: #3a7575; --pygments-gd: #a00000; --pygments-gr: #db0000; --pygments-gh: #000080; --pygments-gi: #008100; --pygments-go: #6e6e6e; --pygments-gp: #000080; --pygments-gu: #800080; --pygments-gt: #04d; --pygments-kc: #008000; --pygments-kd: #008000; --pygments-kn: #008000; --pygments-kp: #008000; --pygments-kr: #008000; --pygments-kt: #b00040; --pygments-m: #666; --pygments-s: #ba2121; --pygments-na: #647421; --pygments-nb: #008000; --pygments-nc: #00f; --pygments-no: #800; --pygments-nd: #a412ff; --pygments-ni: #6d6d6d; --pygments-ne: #c9352e; --pygments-nf: #00f; --pygments-nl: #727200; --pygments-nn: #00f; --pygments-nt: #008000; --pygments-nv: #19177c; --pygments-ow: #a412ff; --pygments-w: #6e6e6e; --pygments-mb: #666; --pygments-mf: #666; --pygments-mh: #666; --pygments-mi: #666; --pygments-mo: #666; --pygments-sa: #ba2121; --pygments-sb: #ba2121; --pygments-sc: #ba2121; --pygments-dl: #ba2121; --pygments-sd: #ba2121; --pygments-s2: #ba2121; --pygments-se: #a55a1e; --pygments-sh: #ba2121; --pygments-si: #af4d74; --pygments-sx: #008000; --pygments-sr: #af4d74; --pygments-s1: #ba2121; --pygments-ss: #19177c; --pygments-bp: #008000; --pygments-fm: #00f; --pygments-vc: #19177c; --pygments-vg: #19177c; --pygments-vi: #19177c; --pygments-vm: #19177c; --pygments-il: #666; } .view-dark .mw-highlight { --pygments-background:var(--wiki-content-background-color--secondary); /* fallback */ --pygments-background: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); --pygments-err: #fe4242; --pygments-c: #4b9797; --pygments-k: #00a300; --pygments-o: #898989; --pygments-ch: #4b9797; --pygments-cm: #4b9797; --pygments-cp: #c17d00; --pygments-cpf: #4b9797; --pygments-c1: #4b9797; --pygments-cs: #4b9797; --pygments-gd: #ff3f3f; --pygments-gr: #fe4242; --pygments-gh: #7a7aff; --pygments-gi: #00a000; --pygments-go: #8a8a8a; --pygments-gp: #7a7aff; --pygments-gu: #f500f5; --pygments-gt: #4e84fe; --pygments-kc: #00a300; --pygments-kd: #00a300; --pygments-kn: #00a300; --pygments-kp: #00a300; --pygments-kr: #00a300; --pygments-kt: #fe357e; --pygments-m: #898989; --pygments-s: #e25e5e; --pygments-na: #80932a; --pygments-nb: #00a300; --pygments-nc: #7a7afe; --pygments-no: #ff4040; --pygments-nd: #bf5aff; --pygments-ni: #999; --pygments-ne: #da655f; --pygments-nf: #7a7afe; --pygments-nl: #a0a000; --pygments-nn: #7a7afe; --pygments-nt: #00a300; --pygments-nv: #8381e7; --pygments-ow: #bf5aff; --pygments-w: #bbb; --pygments-mb: #898989; --pygments-mf: #898989; --pygments-mh: #898989; --pygments-mi: #898989; --pygments-mo: #898989; --pygments-sa: #e25e5e; --pygments-sb: #e25e5e; --pygments-sc: #e25e5e; --pygments-dl: #e25e5e; --pygments-sd: #e25e5e; --pygments-s2: #e25e5e; --pygments-se: #d07125; --pygments-sh: #e25e5e; --pygments-si: #c17492; --pygments-sx: #00a300; --pygments-sr: #c17492; --pygments-s1: #e25e5e; --pygments-ss: #8381e7; --pygments-bp: #00a300; --pygments-fm: #7a7afe; --pygments-vc: #8381e7; --pygments-vg: #8381e7; --pygments-vi: #8381e7; --pygments-vm: #8381e7; --pygments-il: #898989; } div.mw-highlight, .skin-theme-clientpref-night div.mw-highlight { background-color: var(--wiki-content-dynamic-color--inverted); margin: 0.5em 0; } .mw-highlight .err {border-color: var(--pygments-err);} .mw-highlight .c {color: var(--pygments-c);} .mw-highlight .k {color: var(--pygments-k);} .mw-highlight .o {color: var(--pygments-o);} .mw-highlight .ch {color: var(--pygments-ch);} .mw-highlight .cm {color: var(--pygments-cm);} .mw-highlight .cp {color: var(--pygments-cp);} .mw-highlight .cpf {color: var(--pygments-cpf);} .mw-highlight .c1 {color: var(--pygments-c1);} .mw-highlight .cs {color: var(--pygments-cs);} .mw-highlight .gd {color: var(--pygments-gd);} .mw-highlight .gr {color: var(--pygments-gr);} .mw-highlight .gh {color: var(--pygments-gh);} .mw-highlight .gi {color: var(--pygments-gi);} .mw-highlight .go {color: var(--pygments-go);} .mw-highlight .gp {color: var(--pygments-gp);} .mw-highlight .gu {color: var(--pygments-gu);} .mw-highlight .gt {color: var(--pygments-gt);} .mw-highlight .kc {color: var(--pygments-kc);} .mw-highlight .kd {color: var(--pygments-kd);} .mw-highlight .kn {color: var(--pygments-kn);} .mw-highlight .kp {color: var(--pygments-kp);} .mw-highlight .kr {color: var(--pygments-kr);} .mw-highlight .kt {color: var(--pygments-kt);} .mw-highlight .m {color: var(--pygments-m);} .mw-highlight .s {color: var(--pygments-s);} .mw-highlight .na {color: var(--pygments-na);} .mw-highlight .nb {color: var(--pygments-nb);} .mw-highlight .nc {color: var(--pygments-nc);} .mw-highlight .no {color: var(--pygments-no);} .mw-highlight .nd {color: var(--pygments-nd);} .mw-highlight .ni {color: var(--pygments-ni);} .mw-highlight .ne {color: var(--pygments-ne);} .mw-highlight .nf {color: var(--pygments-nf);} .mw-highlight .nl {color: var(--pygments-nl);} .mw-highlight .nn {color: var(--pygments-nn);} .mw-highlight .nt {color: var(--pygments-nt);} .mw-highlight .nv {color: var(--pygments-nv);} .mw-highlight .ow {color: var(--pygments-ow);} .mw-highlight .w {color: var(--pygments-w);} .mw-highlight .mb {color: var(--pygments-mb);} .mw-highlight .mf {color: var(--pygments-mf);} .mw-highlight .mh {color: var(--pygments-mh);} .mw-highlight .mi {color: var(--pygments-mi);} .mw-highlight .mo {color: var(--pygments-mo);} .mw-highlight .sa {color: var(--pygments-sa);} .mw-highlight .sb {color: var(--pygments-sb);} .mw-highlight .sc {color: var(--pygments-sc);} .mw-highlight .dl {color: var(--pygments-dl);} .mw-highlight .sd {color: var(--pygments-sd);} .mw-highlight .s2 {color: var(--pygments-s2);} .mw-highlight .se {color: var(--pygments-se);} .mw-highlight .sh {color: var(--pygments-sh);} .mw-highlight .si {color: var(--pygments-si);} .mw-highlight .sx {color: var(--pygments-sx);} .mw-highlight .sr {color: var(--pygments-sr);} .mw-highlight .s1 {color: var(--pygments-s1);} .mw-highlight .ss {color: var(--pygments-ss);} .mw-highlight .bp {color: var(--pygments-bp);} .mw-highlight .fm {color: var(--pygments-fm);} .mw-highlight .vc {color: var(--pygments-vc);} .mw-highlight .vg {color: var(--pygments-vg);} .mw-highlight .vi {color: var(--pygments-vi);} .mw-highlight .vm {color: var(--pygments-vm);} .mw-highlight .il {color: var(--pygments-il);} .mw-highlight pre { background: var(--pygments-background); margin: 0; } .mw-content-ltr.mw-highlight-lines pre, .mw-content-ltr.content .mw-highlight-lines pre { padding-left: 3.5em; box-shadow: inset 2.75em 0 0 var(--wiki-content-dynamic-color--inverted); } .mw-highlight .hll { background-color: var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent) } .mw-apisandbox-toolbar { background: var(--wiki-content-background-color--secondary); top: var( --wikigg-header-height ); } /* special:replacetext */ .ext-replacetext-searchoptions { background-color: transparent; border: 1px solid var(--wiki-content-border-color); } .ext-replacetext-searchoptions .ext-replacetext-divider { border-bottom: 1px solid var(--wiki-content-border-color); } /**/ .view-dark textarea { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .view-dark textarea:focus-visible { outline-color: var(--wiki-accent-color); outline-style: solid; } .oo-ui-textInputWidget.oo-ui-widget-enabled textarea.oo-ui-inputWidget-input:focus { outline: 1px solid var(--wiki-accent-color); } /* make math formulas legible on dark theme */ .mwe-math-fallback-image-inline, .mwe-math-fallback-image-display, .ve-ui-mwLatexPage-symbol { filter: var(--wiki-icon-general-filter); } /* search bar */ #searchInput { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); box-shadow: none; } #searchInput:focus, #simpleSearch:hover #searchInput, #simpleSearch:hover #searchInput:focus { border-color: var(--wiki-accent-color); box-shadow: none; } #searchButton { filter: var(--wiki-icon-to-link-filter); } .vector-search-box-input::placeholder { color:var(--wiki-content-text-mix-color); } /* Search suggestions */ .suggestions-results, .suggestions-special { background-color: var(--wiki-content-background-color--secondary); } .suggestions a.mw-searchSuggest-link, .suggestions a.mw-searchSuggest-link:hover, .suggestions a.mw-searchSuggest-link:active, .suggestions a.mw-searchSuggest-link:focus { color: var(--wiki-content-text-color); } .suggestions-result { color: var(--wiki-content-link-color); } .suggestions-result-current { background-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .suggestions-special .special-label { color: var(--wiki-content-text-mix-color); } .suggestions-special.suggestions-result-current .special-label { color:var(--wiki-accent-label-color); } .suggestions-special .special-query { color: var(--wiki-link-label-color); } /* search page */ fieldset#mw-searchoptions { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); border-color: var(--wiki-content-border-color); } #mw-searchoptions .divider { border-color: var(--wiki-content-border-color); } .mw-search-profile-tabs { background-color:var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 50%, transparent); border: 1px solid var(--wiki-content-border-color); margin-top: 1em; } .mw-search-profile-tabs div.search-types ul li.current a { color: var(--wiki-content-text-color); } .results-info, .mw-search-result-data { color: var(--wiki-content-text-mix-color); } /**/ /* Login/register page */ .mw-number-text { color:var(--wiki-content-text-mix-color); } .mw-body-content .mw-number-text h3 { color:var(--wiki-heading-color); } .mw-number-text.icon-edits, .mw-number-text.icon-pages, .mw-number-text.icon-contributors { position:relative; background:none; } .mw-number-text.icon-edits::before, .mw-number-text.icon-pages::before, .mw-number-text.icon-contributors::before { position:absolute; width:95px; height:100%; left:0; top:0; content:''; filter:brightness(0) var(--wiki-icon-general-filter); } .mw-number-text.icon-edits::before { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABLCAYAAADnAAD1AAACrUlEQVR4AWL4//8/oH170LEsiKIwXGPbtm0EY9s2g7bdjzh4oVnjyslKVZ3hSu+d5L/c0Xdx/Bt5jjCyAR3QAd9/+DhSW4oeoYmJGQdM4HWjYfQKTXTA8pZFeIgjOmA5Hkd0wDwe6TWa6IAcr4eA5RAdEC0neKWIDoieFcMRRPOAaDJ6+4uITxzwJ+KbmnjdaKkDliISPIv/gcvRxsT7kzgix7MGuBz1ooFyRIq3xOJ64ArUG0EMoMV5RI5nAJDjRV1Go1DIIL7meJKAAngc8Qn/tgoACuCNRtfRJhQyGQLkeJcI3u3oP3GzA5bjjYnwEEE0Acjx+urgEcRNVgFX1sUjdaHF9gA53sW/jScFKIC3SH8hIo5nDXAVwbtA8O6U4+kD6uPpA2rhWQNcXYh3N4HXSfAMAHK8838BTwBQF28hCpKAAnj3SvCsAa4heOdU8NQB5fGUAfXxhAEZ3lmCdz+B18Hx9ABN46kBrv1DeAtQsAZYivdAB08AMMLrJ3hBHU8BkOGdqcyMLcCbj4I1QH08YUCGd0kbTwCQ4MW1oFkR3kM5PAHAdVU8gjhPEk8AkOKRBjN481AwAxjhDRCM4Rq1EzwTgAzvGtoqiicAmMcbjRZI4wkATiP/eVe/4QU0DvXJ4gkAHq9gNEV4cdPRRtQjgycAOA51VkAOoECaiF5J4QkA7iVnuI+vgTcXBauAo1BjBeU0mZuCXlfm2gieOcCN5KzPadH7s9EF1CeJJwD4lKy2BLQM3UFDaFgSTwBwKcE5il6Q1wmeA95KQLGafuI54Ay+I4D2Fm1HY2QwBADPZdCG0EO0Wg5CAHAi6k1ce3E1fdDHAQ8TuG50Ml6F4TngGNQawTWjg2iCPoAG4I5vcG/QVrLDIJMDnvyNBYMDeg7ogA7ogJ4DOqBmnwD4A/itR9A4HwAAAABJRU5ErkJggg==) no-repeat left center; } .mw-number-text.icon-pages::before { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAABLCAYAAADnAAD1AAAByUlEQVR4Ae3XQ6JcQRhH8Rs7mYWT2LZt25rEtpNvicGCOid51lWhX3X/B78F1ClnjUZDHChCDgVUQAVUwF+//zTbaEzwJKuqFQJOwVOYB0fSDege8RnMg8OxA47HhMhGho4YM+BHWGTXMApZP1NxAqdKuIS3DhETC5gT0cEonM+LmH7A8BHHF4zhUMyAr3DKswt4ARvCVQ8RL8FyHIoV8DqyAEbidMCIu2AFDqUbEBiLd4EiroOVcDDdgMBJWI4rNSOugpV0MOWAa2EBIq6HVXAw1YDzYQEiboVVdCDFgLNhASIegtWwP7WAM2AVXC4Z8SKsho+pBZwDCxDxIZ7hGo5iN7ZgG/bjOj61QsB5sAARxyArMA7nUw+4GuYQcaSHv/PrlAPuhDnYh8zR9ZQDnoF1+ooXuI87uIvH+JoT8ES7B1yJxZiGETnbbAHuKqCbkbiqgG5mK6Cb8QqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogAqogG0acAwmVHRLAXschDlQQAVUwKYGXIZTDo7qFnakgAqogP4ooAK+waVh5GpSAROggAqogFKOAiqgAiqg/AUjJ7hc1MT1egAAAABJRU5ErkJggg==) no-repeat left center } .mw-number-text.icon-contributors::before { background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFAAAAAtCAYAAAA5reyyAAAEMElEQVR4AWJ4/uLFYMJsgHbtIVhzLQqg8G7btm3bfLZt2/abtG3btm3btt19tXuNU5UbnV9VPfj2PCtODh7DaOzHDdzEIQxFG6SERItoilcPq6EOpqNsrAdMiWb4CQPQEx+jMsSH13Ad6tJRtIf4UBkfoyf642c0Q8pwBSyOEYiDWpzHP8gIcelZ3IV6dBENIS5lxD84D7WIwwgUD3XActjk8jTLDnFQAiegPm1FFoiD7JgKdbAJ5UIVMA0WQ10aCnEwHBrQ/xAHQ6EuLULqUAT8EurRkxAbtXEWGtBu5IPYeBLq0RemA6bDUqhHwyE2/oIa8qHho3wp0pkM2AS3oR4dRCmIFWZADRkEsUIpHIR6dBtNTAZ8DepDEhpDLIphL9Q9X0dMYyRBfXjNZMD3oT61hFjUwHmoITtQAGLREurT+yYDvgn1IQ4NwhBwP0pALBogDurDmyYDPgL14QjKQCzK43gYjsAyOAL14RGTAcvhKNSjWUgLsciDzVBDliG9zceJWT53fFlzAYGJUI/+g9iYCjVkBMTGv1CPJkJMB/wM6sEdtILY6Aw15A+IjVa4A/Xgs1C9ym2AujQVkoznkQgN6CpaQAwd7euQynxA4EMkuTz6noAkIxu2QQNaAXHwhMujMAkfhvpz1gSogwEQF/pAA/oV4sIAqIPxkFAHLIwVUBuLkQ/iQkNchPp0BHkhLuTDYocjuVDoAwLNobCKx7MQZ0buxn9CPHgO8VBYNYOEI2AxTIPaWI3SEJdq47rPz1jZIC6VxmqHm17RUAYsjm+wB+rgDH5FZYgL/0M9egjiQmX8hjNQB3vwDYqZClgRn2I8TkM9uoxp+BY1IDayYAnUpd8hyaiBbzEdl6EencZ4fIoKXgPWQ0eswTmoIRexCz9DYFUWh6AOeiEFBFYfYYv7aK6cxRp0RL3kAjbBSsRBQ+gwykBg1SrAF+5qOAUNoTisRBNrwHeQAA2D7hAbLQL+qOoBDYMEvA0RRm3cg4bQIYxBO4iNnFgOdfAoJBntMAaHoSF0D7WtbwOmJGIHBuFtFHJxhx8HdeEEnoI4KIS3MQg7kAg1rI8w9kMN2YQ/8RByQRwUxE844GPvj0B9iAu58BD+NPwdcp8wrkEDOoG3kR3iIC0exhAcgQZwHQvwOfJDXMiOt3ECGtA1EwH3oDLERgoUxisYhv24AzUoEWexCD+iJtJBklEF+yId8A7aQywyoCK+xCJcRSI0TO5iL7qjDXIjBcTiIdwNGnAetmKjR8fQHdYL93tYiSRolDiJzqgLseiOYz62fyvmCcOUJ3EAGuV6oUi0rVD9BBpDtqJstARsj3hojFmBdNEQcDw0Rn0V6YAVcBIao2YjXSQDtoDGsDOoFMmAD0FjXLMHAYN5KJIBW+FBwADq4x40hrWLZMCKOIhEXIsxd3EdDSF+3QeCfPkMAgchOAAAAABJRU5ErkJggg==) no-repeat left center } /**/ /* Multimedia viewer */ .mw-mmv-post-image, .mw-mmv-image-metadata { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis { box-shadow: -4px 6px 0 0 var(--wiki-content-background-color); } .mw-mmv-title-para .mw-mmv-ttf-ellipsis { background-color: var(--wiki-content-background-color); } .mw-mmv-title-para .mw-mmv-ttf-ellipsis::before { background-image: linear-gradient(to right, transparent 0%, var(--wiki-content-background-color) 100%); } .mw-mmv-ttf-ellipsis-container:hover .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis { background-color: var(--wiki-content-background-color--secondary); } .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis:hover, .mw-mmv-ttf-ellipsis-container .mw-mmv-ttf-container .mw-mmv-ttf-ellipsis:hover { background-color: var(--wiki-content-text-mix-color-95); background-color: color-mix(in srgb, var(--wiki-content-background-color--secondary) 95%, var(--wiki-content-dynamic-color)); } .mw-ui-button.mw-ui-progressive:not(:disabled) { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); color: var(--wiki-accent-label-color); } .mw-ui-button.mw-ui-progressive:not(:disabled):hover { background-color: var(--wiki-accent-color--hover); } .skin-vector .mw-ui-button.mw-ui-progressive:hover, .skin-vector .mw-ui-button.mw-ui-primary:disabled { box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.75) inset, 0 0 5px var(--wiki-content-border-color); border: 2px solid var(--wiki-content-border-color); } .mw-ui-button.mw-ui-progressive:not(:disabled):active, .mw-ui-button.mw-ui-progressive:not(:disabled).is-on { background-color: var(--wiki-accent-color); border-color: var(--wiki-accent-color); } .mw-ui-button.mw-ui-progressive { box-shadow: 0px 0px 16px rgba(0, 0, 0, 0.75) inset, 0 0 5px var(--wiki-content-border-color) } /* possibly deprecated */ .mw-ui-input:not(:disabled) { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-ui-input:not(:disabled):hover, .mw-ui-input:not(:disabled):focus { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-color); border-color: var(--wiki-accent-color); box-shadow: none; } .mw-ui-input::placeholder { color:var(--wiki-content-text-mix-color); } /* end possibly deprecated */ .mw-mmv-dialog { background-color: var(--wiki-content-background-color); box-shadow: 0 2px 2px 0 var(--wiki-content-border-color); } .mw-mmv-dialog .mw-mmv-dialog-down-arrow { background-color: var(--wiki-content-background-color); } .mw-mmv-options-dialog-header { color: var(--wiki-content-text-color); } .mw-mmv-options-text-header, .mw-mmv-options-text-body { color: var(--wiki-content-text-mix-color); } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-select-menu { background-image: none; } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-select-menu span { display: none; } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-select-menu::after { display:inline-block; width:8px; height:100%; content:''; --mask: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22 viewBox=%220 0 12 12%22%3E %3Cpath fill=%22%23000%22 fill-rule=%22evenodd%22 d=%22m2.023 3 3.49 5.953L9 3z%22 clip-rule=%22evenodd%22/%3E %3C/svg%3E") no-repeat; --mask-size: 12px; --mask-position: center; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: var(--mask-size); mask-size: var(--mask-size); -webkit-mask-position: var(--mask-position); mask-position: var(--mask-position); background-color: currentColor; } .mw-mmv-embed-dimensions { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 76%, transparent); } .oo-ui-optionWidget-selected .mw-mmv-embed-dimensions { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 82%, transparent); } .mw-mmv-download-pane .mw-mmv-download-attribution { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-text-mix-color); } .mw-mmv-download-pane .mw-mmv-download-attribution:hover { background-color: var(--wiki-content-dynamic-color--inverted); color: var(--wiki-content-text-color); } .mw-mmv-download-pane .mw-mmv-download-area .mw-mmv-download-preview-link, .mw-mmv-download-pane .mw-mmv-download-attribution-cta-invite { color: var(--wiki-content-text-mix-color); } .mw-ui-button.mw-ui-quiet, .mw-ui-button.mw-ui-quiet.mw-ui-progressive, .mw-ui-button.mw-ui-quiet.mw-ui-destructive { color: var(--wiki-accent-color); } .mw-ui-button.mw-ui-progressive:not(:disabled):focus { box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 1), inset 0 0 0 2px var(--wiki-accent-color); } input[type="checkbox"]:active+.mw-ui-button.mw-ui-quiet, input[type="checkbox"]:active+.mw-ui-button.mw-ui-quiet.mw-ui-progressive, input[type="checkbox"]:active+.mw-ui-button.mw-ui-quiet.mw-ui-destructive, .mw-ui-button.mw-ui-quiet:active, .mw-ui-button.mw-ui-quiet.mw-ui-progressive:active, .mw-ui-button.mw-ui-quiet.mw-ui-destructive:active, input[type="checkbox"]:focus+.mw-ui-button.mw-ui-quiet, input[type="checkbox"]:focus+.mw-ui-button.mw-ui-quiet.mw-ui-progressive, input[type="checkbox"]:focus+.mw-ui-button.mw-ui-quiet.mw-ui-destructive, .mw-ui-button.mw-ui-quiet:focus, .mw-ui-button.mw-ui-quiet.mw-ui-progressive:focus, .mw-ui-button.mw-ui-quiet.mw-ui-destructive:focus { color: var(--wiki-content-text-color); } /**/ /* Echo */ .oo-ui-buttonElement-framed.oo-ui-widget-enabled.oo-ui-optionWidget-selected > .oo-ui-buttonElement-button:hover { color: var(--wiki-accent-label-color); } .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button:hover { color: var(--wiki-content-text-color); } @-webkit-keyframes unseen-fadeout-to-unread { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color--secondary); } } @keyframes unseen-fadeout-to-unread { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color--secondary); } } @-webkit-keyframes unseen-fadeout-to-read { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color); } } @keyframes unseen-fadeout-to-read { from { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } to { background-color:var(--wiki-content-background-color); } } .oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:before { border-bottom-color: var(--wiki-content-border-color); } .oo-ui-popupWidget-anchored-top .oo-ui-popupWidget-anchor:after { border-bottom-color: var(--wiki-content-background-color--secondary); } .client-js .mw-echo-special-nojs { filter:var(--wiki-icon-general-filter) } /**/ /* codex fixes */ .cdx-checkbox__icon { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb,var(--wiki-accent-color) 5%,transparent); } /**/ /************************* * End Vector theme fixes * **************************/ /************************ * Theme-based Scribunto * *************************/ #mw-scribunto-input { background-color: var(--wiki-content-background-color--secondary); border: 1px solid var(--wiki-content-border-color); color: var(--wiki-content-text-color); } .mw-scribunto-console-fieldset, .mw-scribunto-message, .mw-scribunto-input, .mw-scribunto-error, .mw-scribunto-print, .mw-scribunto-normalOutput { background: transparent; } .mw-scribunto-console-fieldset { color: var(--wiki-content-text-color); } .mw-scribunto-message { color: var(--wiki-content-text-color); } .mw-scribunto-input { color: var(--wiki-content-text-color--hover); } .mw-scribunto-error { color: var(--wiki-alert-color); } .mw-scribunto-print { color: var(--wiki-content-text-color); } .mw-scribunto-normalOutput { color: var(--wiki-content-text-color); } /**************** * End Scribunto * *****************/ /*************************** * Theme-based VisualEditor * ****************************/ .ve-activated .vector-menu-tabs .selected { box-shadow:inset 0 -1px 0 var(--wiki-content-border-color); /* fallback */ box-shadow: inset 0 -1px 0 color-mix(in srgb, var(--wiki-content-border-color) 50%, transparent); } .ve-init-mw-progressBarWidget { background-color: var(--wiki-content-background-color); border-color: var(--wiki-accent-color); box-shadow:0 1px 1px var(--wiki-content-dynamic-color); /* fallback */ box-shadow: 0 1px 1px color-mix(in srgb, var(--wiki-content-dynamic-color) 15%, transparent); } .ve-init-mw-progressBarWidget-bar { background-color:var(--wiki-accent-color); } .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar { border-bottom-color: var(--wiki-content-border-color); } .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-floating .ve-init-mw-desktopArticleTarget-toolbarPlaceholder-bar { top: var(--wikigg-header-height, 0); background: var(--wiki-content-background-color); } div.ve-ce-branchNode { border-color:var(--wiki-content-border-color); } .ve-ce-focusableNode-highlight { background: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .ve-ce-surface-highlights-focused .ve-ce-focusableNode-highlights { opacity: 0.25; } .ve-ce-branchNode-blockSlug, .ve-ce-branchNode-newSlug:not(.ve-ce-branchNode-newSlug-open) { outline-color: var(--wiki-accent-color); background-color:var(--wiki-content-dynamic-color--inverted); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 75%, transparent); } figure[typeof~='mw:File/Thumb'], figure[typeof~='mw:File/Frame'], figure[typeof~='mw:Image/Thumb'], figure[typeof~='mw:Video/Thumb'], figure[typeof~='mw:Audio/Thumb'], figure[typeof~='mw:Image/Frame'], figure[typeof~='mw:Video/Frame'], figure[typeof~='mw:Audio/Frame'] { border-color: var(--wiki-content-border-color); background-color: var(--wiki-content-background-color--secondary); } figure[typeof~='mw:File/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:File/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Thumb'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Frame'] > a:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:File/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:File/Frame'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Thumb'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Image/Frame'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Video/Frame'] > span:first-child > *:first-child:not(.mw-broken-media), figure[typeof~='mw:Audio/Frame'] > span:first-child > *:first-child:not(.mw-broken-media) { border-color: var(--wiki-content-border-color); background: var(--wiki-content-background-color--secondary); } figure[typeof~='mw:File/Thumb'] > figcaption, figure[typeof~='mw:File/Frame'] > figcaption, figure[typeof~='mw:Image/Thumb'] > figcaption, figure[typeof~='mw:Video/Thumb'] > figcaption, figure[typeof~='mw:Audio/Thumb'] > figcaption, figure[typeof~='mw:Image/Frame'] > figcaption, figure[typeof~='mw:Video/Frame'] > figcaption, figure[typeof~='mw:Audio/Frame'] > figcaption { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-specialCharacterPage-character, .oo-ui-toolbar-position-top .ve-ui-toolbarDialog-position-above, .oo-ui-bookletLayout > .oo-ui-menuLayout-menu, .ve-ui-mwTwoPaneTransclusionDialogLayout > .oo-ui-menuLayout-menu, .ve-ui-specialCharacterPage-character:hover { border-color:var(--wiki-content-border-color); } .ve-ui-specialCharacterPage-character:hover { box-shadow:inset 0 0 1px 1px var(--wiki-accent-color); } .oo-ui-listToolGroup-tools .oo-ui-tool.oo-ui-widget-disabled .oo-ui-tool-title, .oo-ui-popupToolGroup-tools .oo-ui-tool-link .oo-ui-tool-accel { color: var(--wiki-content-text-mix-color); } .oo-ui-barToolGroup-tools.oo-ui-toolGroup-enabled-tools .oo-ui-tool.oo-ui-widget-disabled.oo-ui-flaggedElement-primary > .oo-ui-tool-link .oo-ui-tool-title, .oo-ui-barToolGroup-tools.oo-ui-toolGroup-disabled-tools .oo-ui-tool.oo-ui-flaggedElement-primary > .oo-ui-tool-link .oo-ui-tool-title { color:var(--wiki-content-dynamic-color--inverted); /* fallback */ color: color-mix(in srgb, var(--wiki-content-dynamic-color--inverted) 78%, transparent); } .ve-activated .ve-init-mw-desktopArticleTarget-originalContent #catlinks:hover { background: var(--wiki-content-background-color--secondary); /* fallback */ background: color-mix(in srgb, var(--wiki-content-link-color) 10%, transparent); } .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-optionWidget-selected { color: var(--wiki-accent-color); box-shadow: inset 0 -2px 0 0 var(--wiki-accent-color); } .oo-ui-tabOptionWidget { color: var(--wiki-content-text-mix-color); } .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-widget-enabled:not(.oo-ui-optionWidget-selected):hover { color: var(--wiki-accent-color--hover); box-shadow: inset 0 -2px 0 0 var(--wiki-accent-color--hover); } .oo-ui-tabSelectWidget-frameless .oo-ui-tabOptionWidget.oo-ui-widget-enabled:not(.oo-ui-optionWidget-selected):active { color: var(--wiki-content-text-color); box-shadow: inset 0 -2px 0 0 var(--wiki-accent-color--hover); } .oo-ui-tabSelectWidget-frameless { box-shadow: inset 0 -1px 0 0 var(--wiki-content-border-color); } .oo-ui-textInputWidget.oo-ui-widget-enabled.oo-ui-flaggedElement-invalid .oo-ui-inputWidget-input { border-color: var(--wiki-alert-color); } .ve-ce-linkAnnotation.ve-ce-annotation-active { box-shadow:0 0 0 1px var(--wiki-content-background-color--secondary); /* fallback */ box-shadow: 0 0 0 1px color-mix(in srgb, var(--wiki-content-link-color) 20%, transparent); background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-link-color) 10%, transparent); } .ve-ui-mwInternalLinkContextItem-withImage > .oo-ui-iconElement.oo-ui-iconElement-icon { background-color: var(--wiki-content-text-mix-color-95); background-color: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 90%, var(--wiki-content-dynamic-color)); border-color: var(--wiki-content-text-mix-color-95); border-color: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 90%, var(--wiki-content-dynamic-color)); filter: unset; } .mw-widget-titleWidget-menu-withImages .mw-widget-titleOptionWidget.oo-ui-iconElement > .oo-ui-iconElement-icon.mw-widget-titleOptionWidget-hasImage { filter: unset; } .mw-widget-titleWidget-menu-withImages .mw-widget-titleOptionWidget.oo-ui-iconElement > .oo-ui-iconElement-icon:not(.mw-widget-titleOptionWidget-hasImage) { background-color: var(--wiki-content-text-mix-color-95); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-text-mix-color-95) 90%, var(--wiki-content-dynamic-color)); filter: unset; } .ve-ui-desktopContext .ve-ui-linkContextItem .ve-ui-linkContextItem-label .ve-ui-linkContextItem-label-preview { color: var(--wiki-content-text-mix-color); } .ve-ui-toolbarDialog { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .ve-ce-languageAnnotation { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 20%, transparent); border-color: var(--wiki-content-link-color); } .mw-widget-mediaResultWidget-overlay { box-shadow: inset 0 0 0 1px var(--wiki-content-border-color); } .oo-ui-processDialog-actions-safe .oo-ui-widget-enabled.oo-ui-iconElement:not(.oo-ui-labelElement) > .oo-ui-buttonElement-button { background-color: transparent; border-right-color: var(--wiki-accent-color); /* fallback */ border-right-color: color-mix(in srgb, var(--wiki-accent-color) 50%, transparent); } .oo-ui-selectFileWidget-dropTarget { background-color: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget { background-color: var(--wiki-content-background-color); } .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-dropTarget:hover { border-color: var(--wiki-content-text-mix-color); } .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-canDrop.oo-ui-selectFileWidget-dropTarget, .oo-ui-selectFileWidget.oo-ui-widget-enabled.oo-ui-selectFileWidget-canDrop .oo-ui-selectFileInputWidget-info > .oo-ui-inputWidget-input { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); color: var(--wiki-accent-color); } .oo-ui-selectFileWidget.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget, .oo-ui-selectFileWidget.oo-ui-selectFileInputWidget-empty.oo-ui-widget-disabled.oo-ui-selectFileWidget-dropTarget { background-color: var(--wiki-content-text-mix-color-95); border-color: var(--wiki-content-dynamic-color--secondary); } .mw-upload-bookletLayout-filePreview { background-color: var(--wiki-content-background-color--secondary); } .ve-ui-mwMediaDialog-panel-imageinfo-details { color: var(--wiki-content-text-mix-color); } .oo-ui-textInputWidget.oo-ui-widget-disabled .oo-ui-inputWidget-input { -webkit-text-fill-color:var(--wiki-content-text-color); /* fallback */ -webkit-text-fill-color: color-mix(in srgb, var(--wiki-content-text-color) 50%, transparent); } .oo-ui-optionWidget.oo-ui-widget-disabled { color: var(--wiki-content-text-mix-color); } .ve-ui-mwLanguagesPage-languages-table th, .ve-ui-mwLanguagesPage-languages-table td { border-bottom-color: var(--wiki-content-border-color); } .ve-ui-mwLanguagesPage-languages-table tr:nth-child(even) td { background: var(--wiki-content-background-color); } .ve-ui-mwLanguagesPage-languages-table tr:nth-child(odd) td { background: transparent; /* fallback */ background: color-mix(in srgb, var(--wiki-content-dynamic-color--secondary) 5%, transparent); } .ve-ui-targetWidget { border-color: var(--wiki-content-border-color); } .ve-ui-targetWidget:not(.oo-ui-pendingElement-pending) { background: var(--wiki-content-background-color); } .ve-ui-targetWidget-focused { border-color: var(--wiki-accent-color); box-shadow: inset 0 0 0 1px var(--wiki-accent-color); } .ve-ui-mwTransclusionOutlineTemplateWidget-sticky { background-color: var(--wiki-content-background-color); } .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.oo-ui-optionWidget-highlighted { color: var(--wiki-content-dynamic-color); } .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.ve-ui-mwTransclusionOutlineParameterWidget-activePage, .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.ve-ui-mwTransclusionOutlineParameterWidget-activePage:hover, .ve-ui-mwTransclusionOutlineTemplateWidget .ve-ui-mwTransclusionOutlineParameterWidget.ve-ui-mwTransclusionOutlineParameterWidget-activePage.oo-ui-optionWidget-highlighted { color: var(--wiki-accent-color); } .ve-ui-mwTransclusionOutlineTemplateWidget-no-template-parameters { color: var(--wiki-content-text-mix-color); } .ve-ui-mwTemplatePage-description { color: var(--wiki-content-text-mix-color); } .ve-ui-mwParameterPage-doc-required, .ve-ui-mwParameterPage-doc-deprecated, .ve-ui-mwParameterPage-inlineDescription .ve-ui-mwParameterPage-doc-example { color: var(--wiki-content-text-mix-color); } .ve-ui-expandableContent-fade { background: linear-gradient(to right, transparent 0, var(--wiki-content-background-color) 90%); } .ve-ui-expandableContent-toggle { background-color: var(--wiki-content-background-color); } .ve-ui-mwParameterPage-undocumentedLabel { color: var(--wiki-content-text-mix-color); } .oo-ui-fieldLayout-disabled > .oo-ui-fieldLayout-body > .oo-ui-fieldLayout-header > .oo-ui-labelElement-label { color: var(--wiki-content-text-mix-color); } .ve-ui-mwLatexDialog-content .oo-ui-bookletLayout-stackLayout h3 { color: var(--wiki-content-text-mix-color); } .ve-ui-mwLatexPage-symbol { border-color: var(--wiki-content-border-color); } .ve-ui-mwGalleryDialog-highlighted-image { background-color: var(--wiki-content-background-color--secondary); } .ve-ui-mwHelpListToolGroup-tools-footer { border-color: var(--wiki-content-border-color); } .ve-ui-mwHelpListToolGroup-version-link, .ve-ui-mwHelpListToolGroup-version-date, .ve-ui-mwHelpPopupTool-version-label, .ve-ui-mwHelpPopupTool-version-link, .ve-ui-mwHelpPopupTool-version-date { color: var(--wiki-content-text-mix-color); } .ve-ui-mwSaveDialog-summary { background-color: var(--wiki-content-background-color); } .ve-ui-mwSaveDialog-options { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-mwSaveDialog-license { color: var(--wiki-content-text-mix-color); } .oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) > .oo-ui-buttonElement-button:hover, .oo-ui-processDialog .oo-ui-actionWidget:not(.oo-ui-flaggedElement-progressive):not(.oo-ui-flaggedElement-destructive) > .oo-ui-buttonElement-button:active { border-right-color: var(--wiki-accent-color); border-left-color: var(--wiki-accent-color); } .ve-ui-debugBar { border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-commands-divider { border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-dump > table { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-dump td { background-color: var(--wiki-content-background-color); } .ve-ui-debugBar-dump th { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 80%, transparent); text-shadow: 0 1px 1px var(--wiki-content-dynamic-color--inverted); } .ve-ui-debugBar-dump ol { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 60%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-element, .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-char, .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-achar { background-color: var(--wiki-content-background-color--secondary); color: var(--wiki-content-dynamic-color); text-shadow: 0 1px 1px var(--wiki-content-dynamic-color--inverted); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-element { background-color:var(--wiki-accent-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 20%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-char { background-color:var(--wiki-success-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-success-color) 20%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-achar { background-color:var(--wiki-warning-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 20%, transparent); } .ve-ui-debugBar-dump li .ve-ui-debugBar-dump-note { color: var(--wiki-content-text-mix-color); } .ve-ui-debugBar-filibuster { background-color: var(--wiki-content-background-color--secondary); border-color: var(--wiki-content-border-color); } .ve-ui-debugBar-transactions > ol > li { border-color: var(--wiki-content-border-color); } /******************* * End VisualEditor * ********************/ /************************** * Theme-based AbuseFilter * ***************************/ table.mw-abuselog-details { background: var(--wiki-content-background-color); border-color: var(--wiki-content-border-color); } table.mw-abuselog-details th, table.mw-abuselog-details td, div.mw-abusefilter-editor { border-color: var(--wiki-content-border-color); } table.mw-abuselog-details th { background: var(--wiki-content-background-color--secondary); } body td.mw-abusefilter-history-changed { background-color:var(--wiki-alert-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-alert-color) 20%, transparent); } /****************** * End AbuseFilter * *******************/ /************************************ * Theme-based Special:MultiPageEdit * *************************************/ :root { --jexcel-border-color:var(--wiki-content-border-color); /* this is defined by the extension but does not seem to be used anywhere. We override it just in case *shrug* */ } .jexcel, .jexcel_container.fullscreen .jexcel_content{ background-color:var(--wiki-content-background-color); border-bottom-color:var(--wiki-content-border-color); border-right-color:var(--wiki-content-border-color); } table.jexcel > tbody > tr > td:first-child, table.jexcel > thead, table.jexcel > thead > tr > td, table.jexcel > tbody > tr.selected > td:first-child, table.jexcel > thead > tr > td.selected { background-color:var(--wiki-content-background-color--secondary); } table.jexcel > tbody > tr.selected > td:first-child, table.jexcel > thead > tr > td.selected { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-accent-color) 10%, transparent); } table.jexcel > thead > tr > td{ border-bottom-color:var(--wiki-content-border-color); } .jexcel > thead > tr > td.arrow-up, .jexcel > thead > tr > td.arrow-down { background:none; } .jexcel > thead > tr > td.arrow-up::after, .jexcel > thead > tr > td.arrow-down::after { display:inline-block; position:absolute; right:0; top:0; background-repeat:no-repeat; background-position:center right 5px; width:22px; height:100%; content:''; filter:brightness(50%) var(--wiki-icon-general-filter); } .jexcel > thead > tr > td.arrow-up::after { background-image:url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3Cpath d='M7 14l5-5 5 5H7z' fill='gray'/%3E%3C/svg%3E"); } .jexcel > thead > tr > td.arrow-down::after { background-image:url("data:image/svg+xml,%0A%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='none' d='M0 0h24v24H0V0z'/%3E%3Cpath d='M7 10l5 5 5-5H7z' fill='gray'/%3E%3C/svg%3E"); } .jexcel > thead > tr:nth-child(2) > td { z-index:1; /* prevents overlapping the headings after scrolling on tall tables */ } .jexcel > tbody > tr > td { border-top-color:var(--wiki-content-text-mix-color-95); border-bottom-color:var(--wiki-content-text-mix-color-95); } .jexcel > tbody > tr > td.readonly { color:var(--wiki-content-text-mix-color); } .jexcel_content { scrollbar-color:var(--wiki-content-text-mix-color) transparent; /* we need this important to override inline styling */ box-shadow:var(--wiki-content-dynamic-color--secondary--inverted) 2px 2px 5px 0.1px !important; } .jexcel .highlight { background-color: transparent; /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-dynamic-color) 5%, transparent); } .jexcel .highlight-top { border-top-color:var(--wiki-content-text-mix-color); box-shadow:0px -1px var(--wiki-content-dynamic-color--secondary--inverted); } .jexcel .highlight-left { border-left-color:var(--wiki-content-text-mix-color); box-shadow:-1px 0px var(--wiki-content-dynamic-color--secondary--inverted); } .jexcel .highlight-top.highlight-left { box-shadow:-1px -1px var(--wiki-content-dynamic-color--secondary--inverted); } .jexcel .highlight-right { border-right-color:var(--wiki-content-text-mix-color); } .jexcel .highlight-bottom { border-bottom-color:var(--wiki-content-text-mix-color); } .jexcel .jexcel_column_filter { background:none; } .jexcel .jexcel_column_filter::after { display:inline-block; position:absolute; right:0; top:0; background-repeat:no-repeat; background-position:top 50% right 5px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='gray' width='18px' height='18px'%3E%3Cpath d='M10 18h4v-2h-4v2zM3 6v2h18V6H3zm3 7h12v-2H6v2z'/%3E%3Cpath d='M0 0h24v24H0z' fill='none'/%3E%3C/svg%3E"); width:20px; height:100%; content:''; filter:brightness(50%) var(--wiki-icon-general-filter); } .jexcel_pagination > div > div { background-color:var(--wiki-accent-color); /* we need this important to override a built-in one */ color:var(--wiki-accent-label-color) !important; } .jexcel_page_selected { background:linear-gradient(to bottom,var(--wiki-accent-color) 0%,var(--wiki-accent-color--hover) 100%); /* we need this important to override a built-in one */ border:1px solid var(--wiki-content-border-color) !important; } /**************************** * End Special:MultiPageEdit * *****************************/ /*********************** * Theme-based msupload * ************************/ #msupload-div, #msupload-list .file { background-color:var(--wiki-content-background-color); border-color:var(--wiki-content-border-color); } #msupload-select { filter:brightness(0) var(--wiki-icon-to-link-filter); } #msupload-dropzone { border-color:var(--wiki-content-border-color); color:var(--wiki-content-text-color); } .drop-over { background-color:var(--wiki-accent-color); color:var(--wiki-accent-label-color) !important; } #msupload-bottom { border-color:var(--wiki-content-border-color); } #msupload-bottom #msupload-files { padding-left:0; background: none; } #msupload-bottom #msupload-files::before { display:inline-block; background: url(/extensions/MsUpload/resources/images/msu-upload-icon.png?bdd61) no-repeat 0 0; background-position:left center; height:22px; width:25px; content:''; vertical-align: top; filter:var(--wiki-icon-general-filter); } #msupload-list .file .file-size { color: var(--wiki-content-text-mix-color); } #msupload-div a { color: var(--wiki-content-link-color); } #msupload-list .file .file-name:hover { background-color: var(--wiki-content-dynamic-color--inverted); } #msupload-list .file .file-name-input { background: var(--wiki-content-dynamic-color--inverted); } #msupload-list .file .file-warning { color: var(--wiki-warning-color); } /*************************** * End theme-based msupload * ****************************/ /***************************** * Theme-based commentstreams * ******************************/ .cs-title-edit-field { border-color:var(--wiki-accent-color); } .cs-title-edit-field::placeholder, .view-dark .cs-body-edit-field::placeholder { color: var(--wiki-content-text-mix-color); } .cs-edit-box , .cs-expanded .cs-comment-header { background-color: var(--wiki-content-background-color--secondary); border-color:var(--wiki-content-border-color); } .cs-target-comment .cs-comment-header { border-color:var(--wiki-accent-color); } .cs-comment-author a { color: var(--wiki-content-link-color); } .cs-comment-details { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 95%, transparent); } .cs-comment-author-anonymous { color:var(--wiki-content-text-color); /* fallback */ color:color-mix(in srgb, var(--wiki-content-text-color) 95%, transparent); } .cs-comment { border:1px solid var(--wiki-content-border-color); } .cs-comment-body { padding:0 5px; } /********************************* * End theme-based commentstreams * **********************************/ /************************ * Theme-based checkuser * *************************/ .mw-datatable.ext-checkuser-investigate-table tr:hover td { background-color:var(--wiki-content-background-color); } .mw-datatable.ext-checkuser-investigate-table th { background-color:var(--wiki-content-background-color--secondary); } .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned td, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned-data-match td, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) .ext-checkuser-investigate-table-row-hover-data-match td, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) tr:hover td{ background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 10%, transparent); } .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned td.ext-checkuser-investigate-table-cell-pinned, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned-data-match td.ext-checkuser-investigate-table-cell-pinned, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned td.ext-checkuser-investigate-table-cell-pinned-data-match, .ext-checkuser-investigate-table.mw-datatable.ext-checkuser-investigate-table-pinned .ext-checkuser-investigate-table-row-pinned-data-match td.ext-checkuser-investigate-table-cell-pinned-data-match, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) tr td.ext-checkuser-investigate-table-cell-hover-data-match, .ext-checkuser-investigate-table.mw-datatable:not(.ext-checkuser-investigate-table-pinned) tr td:hover.ext-checkuser-investigate-table-cell-pinnable { background-color: var(--wiki-content-background-color--secondary); /* fallback */ background-color: color-mix(in srgb, var(--wiki-warning-color) 40%, transparent); } .ext-checkuser-investigate-copy-message.oo-ui-messageWidget.oo-ui-messageWidget-block.oo-ui-flaggedElement-notice { background-color:var(--wiki-content-background-color--secondary); border-color:var(--wiki-content-border-color); } .mw-special-Investigate .ext-checkuser-investigate-subtitle-fieldset { background-color:var(--wiki-content-background-color--secondary); } /**************** * End checkuser * *****************/ /*************************** * Theme-based SearchDigest * ****************************/ .searchdigest-stats-table { border-color: var(--wiki-content-border-color); border-collapse: collapse; } .searchdigest-stats-table thead th, .searchdigest-stats-table tr:not(:last-child) th, .searchdigest-stats-table tr:not(:last-child) td { border-bottom-color: var(--wiki-content-border-color); } .searchdigest-stats-table thead th:last-child, .searchdigest-stats-table td { border-left-color: var(--wiki-content-border-color); } .searchdigest-stats-table thead tr { background: var(--wiki-content-background-color--secondary); } /******************* * End SearchDigest * ********************/ /**************************** * Extension:RelatedArticles * *****************************/ .client-js .read-more-container { min-height:unset; } @media (min-width: 1000px) { .client-js .read-more-container { min-height:calc( 80px /*card height*/ + 10px /*card margin*/ + 1em /*container padding*/ + 0.3em /*card-list margin*/ + 0.8em /*h2 font-size*/ + 1em /*h2 padding*/ + 0.6em /*h2 margin*/ + 1px /*container border*/ ); } } .ext-related-articles-card-list .ext-related-articles-card { background-color:var(--wiki-content-background-color); } .ext-related-articles-card-list .ext-related-articles-card, .ext-related-articles-card-list .ext-related-articles-card + .ext-related-articles-card { /* your guess is as good as mine for why they did this */ border-color:var(--wiki-content-border-color); /* fallback */ border-color: color-mix(in srgb, var(--wiki-content-border-color) 20%, transparent); } .ext-related-articles-card-list .ext-related-articles-card-thumb { background-color:var(--wiki-content-background-color--secondary); } .ra-read-more h2 { color:var(--wiki-body-dynamic-color--secondary); } .ext-related-articles-card-list h3 a { color:var(--wiki-content-heading-color); } .ext-related-articles-card-list h3::after { background-image: linear-gradient(to right,transparent,var(--wiki-content-background-color) 50%); } .ext-related-articles-card-list .ext-related-articles-card-extract { color:var(--wiki-content-text-color); /* fallback */ color: color-mix(in srgb, var(--wiki-content-text-color) 50%, transparent); } /* removed background image and use a mask image instead */ .ext-related-articles-card-list .ext-related-articles-card-thumb-placeholder { position:relative; background-image:none; } .ext-related-articles-card-list .ext-related-articles-card-thumb-placeholder::after { position:absolute; width:100%; height:100%; top:0; left:0; content:''; --mask-image: url("/extensions/RelatedArticles/resources/ext.relatedArticles.readMore/article.svg?3c572"); --mask-size: 40px; --mask-repeat: no-repeat; --mask-position: center; -webkit-mask: var(--mask-image); mask: var(--mask-image); -webkit-mask-size: var(--mask-size); mask-size: var(--mask-size); -webkit-mask-repeat: var(--mask-repeat); mask-repeat: var(--mask-repeat); -webkit-mask-position: var(--mask-position); mask-position: var(--mask-position); background-color:var(--wiki-content-text-color); /* fallback */ background-color: color-mix(in srgb, var(--wiki-content-text-color) 75%, transparent); } /**/ /* this simulates mw-footer having a top border */ .read-more-container { border-bottom: var(--wiki-content-border-width, 1px) solid var(--wiki-content-border-color); } @media screen and (min-width: 720px) { .read-more-container { margin-right:1em; } } /******************************** * End Extension:RelatedArticles * *********************************/ /******************* * Extension:Popups * ********************/ .mwe-popups { box-shadow:0 30px 90px -20px rgba(0,0,0,0.3),0 0 1px 1px transparent; /* fallback */ box-shadow: 0 30px 90px -20px rgba(0,0,0,0.3),0 0 1px 1px color-mix(in srgb, var(--wiki-content-border-color) 5%, transparent); } .mwe-popups, .mwe-popups .mwe-popups-container { background-color:var(--wiki-content-background-color); color:var(--wiki-content-text-color); } .mwe-popups .mwe-popups-extract { color:var(--wiki-content-text-color); } .mwe-popups .mwe-popups-extract[dir="ltr"]::after { background-image: linear-gradient(to right,transparent,var(--wiki-content-background-color) 50%); } .mwe-popups.flipped-y::before, .mwe-popups.flipped-x-y::before, .mwe-popups.mwe-popups-image-pointer::before, .mwe-popups.mwe-popups-image-pointer.flipped-x::before, .mwe-popups.mwe-popups-no-image-pointer::before, .mwe-popups.flipped-x.mwe-popups-is-tall::before, .mwe-popups.flipped-x-y.mwe-popups-is-tall::before { border-color:var(--wiki-content-border-color); } .mwe-popups.flipped-y::after, .mwe-popups.flipped-x-y::after, .mwe-popups.mwe-popups-image-pointer::after, .mwe-popups.mwe-popups-image-pointer.flipped-x::after, .mwe-popups.mwe-popups-no-image-pointer::after, .mwe-popups.flipped-x-y.mwe-popups-is-tall::after { border-color:var(--wiki-content-background-color); } .popups-icon { position:relative; background-position: center; background-repeat: no-repeat; background-size: calc(max(1.4285714em,20px)); min-width: 20px; min-height: 20px; width: 1.4285714em; height: 1.4285714em; display: inline-block; vertical-align: text-bottom; } .popups-icon--preview-generic, .popups-icon--settings, .popups-icon--infoFilled, .popups-icon--infoFilled:lang(ar), .popups-icon--close, .popups-icon--reference-generic, .popups-icon--reference-book, .popups-icon--preview-disambiguation { background-image:none; } .popups-icon::after { position:absolute; width:100%; height:100%; top:0; left:0; content:''; -webkit-mask-image:var(--mask-image, none); mask-image:var(--mask-image, none); -webkit-mask-repeat:var(--mask-repeat, no-repeat); mask-repeat:var(--mask-repeat, no-repeat); -webkit-mask-size:var(--mask-size, calc(max(1.4285714em,20px))); mask-size:var(--mask-size, calc(max(1.4285714em,20px))); -webkit-mask-position:var(--mask-position, center); mask-position:var(--mask-position, center); background-color:var(--mask-color, currentColor); background-color:var(--mask-color, currentColor); } .popups-icon--preview-generic::after { --mask-image: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2220%22 height=%2220%22 viewBox=%220 0 20 20%22%3E %3Ctitle%3E sad face %3C/title%3E %3Cpath d=%22M2 0a2 2 0 0 0-2 2v18l4-4h14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm4 4c1.336 0 2.007 1.617 1.06 2.56-.943.947-2.56.276-2.56-1.06A1.5 1.5 0 0 1 6 4zm8 0c1.336 0 2.007 1.617 1.06 2.56-.943.947-2.56.276-2.56-1.06A1.5 1.5 0 0 1 14 4zm-4 5c2.61 0 4.83.67 5.65 3H4.35C5.17 9.67 7.39 9 10 9z%22/%3E %3C/svg%3E"); } .popups-icon--settings::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><g transform=\"translate(10 10)\"><path id=\"cdx-icon-settings-a\" d=\"M1.5-10h-3l-1 6.5h5m0 7h-5l1 6.5h3\"/><use xlink:href=\"%23cdx-icon-settings-a\" transform=\"rotate(45)\"/><use xlink:href=\"%23cdx-icon-settings-a\" transform=\"rotate(90)\"/><use xlink:href=\"%23cdx-icon-settings-a\" transform=\"rotate(135)\"/></g><path d=\"M10 2.5a7.5 7.5 0 000 15 7.5 7.5 0 000-15v4a3.5 3.5 0 010 7 3.5 3.5 0 010-7\"/></svg>"); } .popups-icon--infoFilled::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M10 0C4.477 0 0 4.477 0 10s4.477 10 10 10 10-4.477 10-10S15.523 0 10 0zM9 5h2v2H9zm0 4h2v6H9z\"/></svg>"); } .popups-icon--infoFilled:lang(ar)::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M8 19a1 1 0 001 1h2a1 1 0 001-1v-1H8zm9-12a7 7 0 10-12 4.9S7 14 7 15v1a1 1 0 001 1h4a1 1 0 001-1v-1c0-1 2-3.1 2-3.1A7 7 0 0017 7z\"/></svg>"); } .popups-icon--close::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"m4.34 2.93 12.73 12.73-1.41 1.41L2.93 4.35z\"/><path d=\"M17.07 4.34 4.34 17.07l-1.41-1.41L15.66 2.93z\"/></svg>"); } .popups-icon--reference-generic::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"m15 10-2.78-2.78L9.44 10V1H5a2 2 0 00-2 2v14a2 2 0 002 2h10a2 2 0 002-2V3a2 2 0 00-2-2z\"/></svg>"); } .popups-icon--reference-book::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M15 2a7.65 7.65 0 00-5 2 7.65 7.65 0 00-5-2H1v15h4a7.65 7.65 0 015 2 7.65 7.65 0 015-2h4V2zm2.5 13.5H14a4.38 4.38 0 00-3 1V5s1-1.5 4-1.5h2.5z\"/><path d=\"M9 3.5h2v1H9z\"/></svg>"); } .popups-icon--reference-journal::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M2 18.5A1.5 1.5 0 003.5 20H5V0H3.5A1.5 1.5 0 002 1.5zM6 0v20h10a2 2 0 002-2V2a2 2 0 00-2-2zm7 8H8V7h5zm3-2H8V5h8z\"/></svg>"); } .popups-icon--reference-news::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M5 2a2 2 0 00-2 2v12a1 1 0 01-1-1V5h-.5A1.5 1.5 0 000 6.5v10A1.5 1.5 0 001.5 18H18a2 2 0 002-2V4a2 2 0 00-2-2zm1 2h11v4H6zm0 6h6v1H6zm0 2h6v1H6zm0 2h6v1H6zm7-4h4v5h-4z\"/></svg>"); } .popups-icon--reference-web::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M2 2a2 2 0 00-2 2v12a2 2 0 002 2h16a2 2 0 002-2V4a2 2 0 00-2-2zm2 1.5A1.5 1.5 0 112.5 5 1.5 1.5 0 014 3.5zM18 16H2V8h16z\"/></svg>"); } .popups-icon--preview-disambiguation::after { --mask-image: url("data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"%23202122\"><path d=\"M7 0a2 2 0 00-2 2h9a2 2 0 012 2v12a2 2 0 002-2V2a2 2 0 00-2-2z\"/><path d=\"M13 20a2 2 0 002-2V5a2 2 0 00-2-2H4a2 2 0 00-2 2v13a2 2 0 002 2zM9 5h4v5H9zM4 5h4v1H4zm0 2h4v1H4zm0 2h4v1H4zm0 2h9v1H4zm0 2h9v1H4zm0 2h9v1H4z\"/></svg>"); } /*********************** * End Extension:Popups * ************************/ /********************* * Mobile adjustments * **********************/ /* Responsive Special:UserRights */ #mw-userrights-table-outer input#wpReason { width:100%; max-width:33.5em; } @media screen and (max-width:720px) { :root { --wiki-content-right-margin: 0px; --wiki-content-padding:0.5rem; --wiki-navigation-right-margin: 1px; --wiki-navigation-left-margin: 0px; --wiki-navigation-top-padding: 5px; --wiki-navigation-bottom-padding:0px; --wiki-navigation-height:2rem; --wiki-navigation-search-height:2.15rem; --wiki-navigation-search-margin:0.5rem; --wiki-logo-height: 80px; --wiki-logo-width: 100%; --wiki-logo-margin: 10px; --wiki-head-height: calc(var(--wiki-logo-height) + (var(--wiki-logo-margin) * 2) + var(--wiki-navigation-height) + var(--wiki-navigation-top-padding) + var(--wiki-navigation-bottom-padding)); --wiki-head-icon-padding: 0.25rem; --wiki-head-icon-size: calc(var(--wiki-navigation-height) - var(--wiki-head-icon-padding) * 2); --wiki-sidebar-background-opacity: var(--wiki-content-background-opacity); --wiki-menu-margin: 0.2rem; --wiki-menu-top-offset: calc(var(--wiki-head-height) + var( --wikigg-header-height ) + var(--wiki-navigation-bottom-padding) + var(--wiki-navigation-search-margin)); --wiki-sidebar-portal-spacing:0px; } #mw-page-base, #mw-head-base { height:var(--wiki-head-height); } #mw-page-base { padding-top: var( --wikigg-header-height ); } #mw-head-base { margin-top:calc(var(--wiki-head-height) * -1); } #p-logo, #p-logo a { height: var(--wiki-logo-height); width: var(--wiki-logo-width); } #p-logo { position:absolute; background:none; padding:0; left:0; margin:var(--wiki-logo-margin) 0; transform:none; top:calc(var(--wikigg-header-height)); } .mw-wiki-logo { background-size:contain; } #mw-head { left:0; width:100%; top:calc(var(--wiki-head-height) + var( --wikigg-header-height ) - var(--wiki-navigation-height)); } #left-navigation, #right-navigation { margin-top: 0; height:var(--wiki-navigation-height); } #right-navigation { margin-right: var(--wiki-navigation-right-margin); } div#left-navigation { margin-left: var(--wiki-navigation-left-margin); } div#right-navigation div#p-search { margin-right: 0; } .vector-menu-tabs-legacy, .vector-menu-dropdown { height:var(--wiki-navigation-height); } .vector-menu-tabs-legacy li a { height:var(--wiki-navigation-height); } #p-cactions { padding-bottom: 0px; } #p-search { position: absolute; left: 50%; transform:translateX(-50%); top: calc(var(--wiki-navigation-height) + var(--wiki-navigation-bottom-padding)); margin-left:0px; z-index: 4 /** above #mw-panel **/; } #simpleSearch { width: calc(100vw - var(--wiki-navigation-right-margin) - var(--wiki-navigation-left-margin)); } .vector-search-box-input { height:var(--wiki-navigation-search-height); } .vector-search-box form { margin:var(--wiki-navigation-search-margin) 0px; } .mw-body, .mw-footer { border-left-width: 0; border-right-width: 0; } .mw-body { margin-top: 0; padding-top:calc(var(--wiki-content-padding) + var(--wiki-navigation-search-height) + var(--wiki-navigation-bottom-padding) + (var(--wiki-navigation-search-margin) * 2)); } #mw-data-after-content { margin-left:0; } #mw-panel { position: unset; width:100%; margin: 0px auto; padding: 0; top: 0; background-position:bottom right, top center; background-size:100% 0.5em, 100% 100%; float:unset; } .vector-menu-dropdown .vector-menu-content { right: 0; left: unset; } #mw-panel .vector-menu-portal { box-sizing:border-box; border-left-width:0; border-right-width:0; background-color: var(--wiki-sidebar-background-color); } table.wikitable, table.responsive-table { display: block; overflow-x: auto; border: 0; } .mw-installed-software { word-break: unset; } .gallerybox, .gallerybox > div, .gallerybox .thumb { max-width:100%; } /* disable float on RecentChanges legend */ .mw-changeslist-legend { float: none; margin: 0 auto; } /* advanced search options */ #mw-searchoptions table { float: none; } #mw-searchoptions table td { display: block; } /* popup when clicking the download button in multimediaviewer */ .mw-mmv-dialog { width: unset; } /* turn math elements into scroll blocks unless they're an immediate child of a span */ :not(span) > math.mwe-math-element { overflow: auto hidden; max-width: 100%; } /* Expandable mobile navigation panel */ body.has-vector-mobile-menu #mw-panel { position: absolute; top: var(--wiki-menu-top-offset); z-index: 3; } body.has-vector-mobile-menu #mw-panel .mobile-nav-toggle { position: relative; cursor: pointer; z-index: 5; display: block; appearance: none; border: 1px solid var(--wiki-content-border-color); margin-left: var(--wiki-navigation-search-margin); margin-bottom: 2px; background-color: var(--wiki-content-background-color--secondary); } body.has-vector-mobile-menu #mw-panel .vector-menu-portal { display: none; } body.has-vector-mobile-menu #mw-panel .mobile-nav-toggle.nav--expanded ~ .vector-menu-portal { display: block; } body.has-vector-mobile-menu #mw-navigation #mw-panel .vector-menu-portal { text-align: left; font-size: 110%; border-left-width: var(--wiki-sidebar-border-width, 1px); border-right-width: var(--wiki-sidebar-border-width, 1px); margin-inline: calc(var(--wiki-navigation-left-margin) + var(--wiki-menu-margin)); } body.has-vector-mobile-menu #mw-navigation #mw-panel .vector-menu-portal + .vector-menu-portal { border-top-width: 0; } body.has-vector-mobile-menu #mw-navigation #mw-panel .vector-menu-portal:not(:last-child) { border-bottom-width: 0; } body.has-vector-mobile-menu #mw-panel .vector-menu-content-list { display: flex; flex-wrap: wrap; } body.has-vector-mobile-menu #mw-panel .vector-menu-content-list a { display: block; padding: 0.2rem 0.5rem; border: 1px solid transparent; } body.has-vector-mobile-menu #mw-panel .vector-menu-content-list a:hover { border-color: var(--wiki-content-link-color); } body.has-vector-mobile-menu #mw-panel a.feedlink { padding-left: 16px; } body.has-vector-mobile-menu #mw-panel #p-navigation-label { display: block; } body.has-vector-mobile-menu #p-logo { /* Logo's a part of the sidebar panel, which uses relative positioning for the expandable button. Offset the logo appropriately. */ top: calc( -1 * var( --wiki-menu-top-offset ) + var( --wikigg-header-height ) ); } .mobile-nav-toggle { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M1 3v2h18V3zm0 8h18V9H1zm0 6h18v-2H1z'/%3E%3C/svg%3E%0A"); } body.has-vector-mobile-menu #p-tb .mw-list-item > a { display: inline-flex; } body.has-vector-mobile-menu #p-tb .vector-menu-content-list { flex-direction: row; } /* Search adjustments for the expandable menu */ body.has-vector-mobile-menu #p-search { /* reposition to the right when mobile sidebar menu is active */ left: calc(var(--wiki-navigation-search-margin) * 3 + var(--wiki-head-icon-size) + var(--wiki-head-icon-padding)); right: calc(var(--wiki-navigation-right-margin) + var(--wiki-navigation-search-margin)); transform: none; } body.has-vector-mobile-menu #simpleSearch { width: 100%; margin: 0 auto; } /* icon navbar tabs + expandable nav panel icon */ #mw-head { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg fill='none' height='24' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0h24v24H0z' fill='none' stroke='none'/%3E%3Cpath d='M4 4l4 16l4 -14l4 14l4 -16'/%3E%3C/svg%3E"); } #mw-head .vector-menu-tabs .mw-list-item a, #mw-head .vector-menu-dropdown .vector-menu-heading, #mw-panel .mobile-nav-toggle { line-height:var(--wiki-head-icon-size); width: var(--wiki-head-icon-size); /* same as line height */ height: var(--wiki-head-icon-size); box-sizing: content-box; padding: var(--wiki-head-icon-padding); color: transparent; /**<< for watch/unwatch, the text of <a> will be plain 'watch'/'unwatch' without <span> after clicking. **/ } #mw-head .vector-menu-tabs .mw-list-item a::before, #mw-head .vector-menu-dropdown .vector-menu-heading::before, #mw-panel .mobile-nav-toggle::before { content: ""; display: block; position: unset; background-image: none; width: var(--wiki-head-icon-size); height: var(--wiki-head-icon-size); margin: 0; --mask: var(--icon) no-repeat; -webkit-mask: var(--mask); mask: var(--mask); -webkit-mask-size: 100% 100%; mask-size: 100% 100%; -webkit-mask-position: center center; mask-position: center center; background-color: var(--wiki-navigation-text-color); } #mw-head .vector-menu-tabs .mw-list-item a:hover::before, #mw-head .vector-menu-dropdown .vector-menu-heading:hover::before, #mw-panel .mobile-nav-toggle:hover::before, #mw-panel .mobile-nav-toggle.nav--expanded::before { background-color: var(--wiki-navigation-text-color--hover); } #mw-head .vector-menu-tabs .mw-list-item.selected a::before { background-color: var(--wiki-navigation-selected-text-color); } #mw-head .vector-menu-tabs .mw-list-item a span, #mw-head .vector-menu-dropdown .vector-menu-heading span { display: none; } #mw-head .vector-menu-dropdown .vector-menu-heading::after { display: none; } #ca-ve-edit, #ca-edit { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='m16.77 8 1.94-2a1 1 0 0 0 0-1.41l-3.34-3.3a1 1 0 0 0-1.41 0L12 3.23zM1 14.25V19h4.75l9.96-9.96-4.75-4.75z'/%3E%3C/svg%3E%0A"); } #ca-ve-edit + #ca-edit { --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='20' height='20' viewBox='0 0 20 20' aria-hidden='true'%3E%3C!----%3E%3Cg%3E%3Cpath d='M1 3v14h3v-2H3V5h1V3zm4 0v14h4v-2H7V5h2V3zm11 0v2h1v10h-1v2h3V3zm-5 0v2h2v10h-2v2h4V3z'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); } #ca-view, #ca-view-foreign { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M10 14.5a4.5 4.5 0 1 1 4.5-4.5 4.5 4.5 0 0 1-4.5 4.5M10 3C3 3 0 10 0 10s3 7 10 7 10-7 10-7-3-7-10-7'/%3E%3Ccircle cx='10' cy='10' r='2.5'/%3E%3C/svg%3E"); } #left-navigation li[id^=ca-nstab-] { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ctitle%3E article %3C/title%3E%3Cpath d='M5 1a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2zm0 3h5v1H5zm0 2h5v1H5zm0 2h5v1H5zm10 7H5v-1h10zm0-2H5v-1h10zm0-2H5v-1h10zm0-2h-4V4h4z'/%3E%3C/svg%3E%0A"); } #ca-history { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M9 6v5h.06l2.48 2.47 1.41-1.41L11 10.11V6z'/%3E%3Cpath d='M10 1a9 9 0 0 0-7.85 13.35L.5 16H6v-5.5l-2.38 2.38A7 7 0 1 1 10 17v2a9 9 0 0 0 0-18'/%3E%3C/svg%3E%0A"); } #ca-talk { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M26,12H24V6a3,3,0,0,0-3-3H6A3,3,0,0,0,3,6V24.41l5.12-5.12A1.05,1.05,0,0,1,8.83,19H12v3a3,3,0,0,0,3,3h8.17a1.05,1.05,0,0,1,.71.29L29,30.41V15A3,3,0,0,0,26,12ZM12,15v2H8.83a3,3,0,0,0-2.12.88L5,19.59V6A1,1,0,0,1,6,5H21a1,1,0,0,1,1,1v6H15A3,3,0,0,0,12,15ZM27,25.59l-1.71-1.71A3,3,0,0,0,23.17,23H15a1,1,0,0,1-1-1V15a1,1,0,0,1,1-1H26a1,1,0,0,1,1,1Z'/%3E%3C/g%3E%3C/svg%3E"); } #t-contributions { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg enable-background='new 0 0 32 32' id='Stock_cut' version='1.1' viewBox='0 0 32 32' xml:space='preserve' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cdesc/%3E%3Cpath d='M27,12V5h-7v0 c0-2.209-1.791-4-4-4h0c-2.209,0-4,1.791-4,4v0H1v7h0c2.209,0,4,1.791,4,4v0c0,2.209-1.791,4-4,4h0v11h11v0c0-2.209,1.791-4,4-4h0 c2.209,0,4,1.791,4,4v0h7V20h0c2.209,0,4-1.791,4-4v0C31,13.791,29.209,12,27,12L27,12z' fill='none' stroke='%23000000' stroke-linejoin='round' stroke-miterlimit='10' stroke-width='2'/%3E%3C/svg%3E"); } #ca-addsection { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpolygon points='29 15 17 15 17 3 15 3 15 15 3 15 3 17 15 17 15 28 17 28 17 17 29 17 29 15'/%3E%3C/g%3E%3C/svg%3E"); } #ca-viewsource { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath class='heroicon-ui' d='M20.59 12l-3.3-3.3a1 1 0 1 1 1.42-1.4l4 4a1 1 0 0 1 0 1.4l-4 4a1 1 0 0 1-1.42-1.4l3.3-3.3zM3.4 12l3.3 3.3a1 1 0 0 1-1.42 1.4l-4-4a1 1 0 0 1 0-1.4l4-4a1 1 0 0 1 1.42 1.4L3.4 12zm7.56 8.24a1 1 0 0 1-1.94-.48l4-16a1 1 0 1 1 1.94.48l-4 16z'/%3E%3C/svg%3E"); } #p-variants { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' %3F%3E%3Csvg id='Outlined' viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle/%3E%3Cg id='Fill'%3E%3Cpath d='M16,2A14,14,0,1,0,30,16,14,14,0,0,0,16,2Zm8,13a24.28,24.28,0,0,0-.41-3.62c2.19.91,3.75,2.19,4.25,3.62Zm-2,0H17V10a20.9,20.9,0,0,1,4.34.63A20.26,20.26,0,0,1,22,15ZM17,8V4.19c1.43.5,2.71,2.06,3.62,4.25A24.28,24.28,0,0,0,17,8ZM15,4.19V8a24.28,24.28,0,0,0-3.62.41C12.29,6.25,13.57,4.69,15,4.19ZM15,10v5H10a20.26,20.26,0,0,1,.63-4.34A20.9,20.9,0,0,1,15,10ZM8,15H4.19c.5-1.43,2.06-2.71,4.25-3.62A24.28,24.28,0,0,0,8,15Zm0,2a24.28,24.28,0,0,0,.41,3.62C6.25,19.71,4.69,18.43,4.19,17Zm2,0h5v5a20.9,20.9,0,0,1-4.34-.63A20.26,20.26,0,0,1,10,17Zm5,7v3.84c-1.43-.5-2.71-2.06-3.62-4.25A24.28,24.28,0,0,0,15,24Zm2,3.84V24a24.28,24.28,0,0,0,3.62-.41C19.71,25.75,18.43,27.31,17,27.81ZM17,22V17h5a20.26,20.26,0,0,1-.63,4.34A20.9,20.9,0,0,1,17,22Zm7-5h3.84c-.5,1.43-2.06,2.71-4.25,3.62A24.28,24.28,0,0,0,24,17Zm2.87-6.12A15.11,15.11,0,0,0,23,9a15.11,15.11,0,0,0-1.85-3.87A12.12,12.12,0,0,1,26.84,10.88Zm-16-5.72A15.11,15.11,0,0,0,9,9a15.11,15.11,0,0,0-3.87,1.85A12.12,12.12,0,0,1,10.88,5.16Zm-5.72,16A15.11,15.11,0,0,0,9,23a15.11,15.11,0,0,0,1.85,3.87A12.12,12.12,0,0,1,5.16,21.12Zm16,5.72A15.11,15.11,0,0,0,23,23a15.11,15.11,0,0,0,3.87-1.85A12.12,12.12,0,0,1,21.12,26.84Z'/%3E%3C/g%3E%3C/svg%3E"); } #p-cactions { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='2'/%3E%3Ccircle cx='3' cy='10' r='2'/%3E%3Ccircle cx='17' cy='10' r='2'/%3E%3C/svg%3E%0A"); } #ca-watch { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath d='M20 7h-7L10 .5 7 7H0l5.46 5.47-1.64 7 6.18-3.7 6.18 3.73-1.63-7zm-10 6.9-3.76 2.27 1-4.28L3.5 8.5h4.61L10 4.6l1.9 3.9h4.6l-3.73 3.4 1 4.28z'/%3E%3C/svg%3E%0A"); } #ca-unwatch { --icon: url("data:image/svg+xml,%3C%3Fxml version='1.0'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' id='Outlined'%3E%3Cg style='fill:%23000000;fill-opacity:1' id='Fill'%3E%3Cpath style='fill:%23000000;fill-opacity:1' id='path1380' d='M 28.61,11.67 H 20 L 17.34,3.47 C 16.920093,2.1973942 15.119907,2.1973942 14.7,3.47 L 12,11.67 H 3.39 c -1.3409796,0.0031 -1.900508,1.71581 -0.82,2.51 l 7,5.07 -2.68,8.21 C 6.5980433,28.35747 7.2662365,29.278767 8.21,29.28 8.4953889,29.267666 8.7705436,29.170143 9,29 l 7,-5.07 7,5.07 c 0.236205,0.170386 0.518805,0.264586 0.81,0.27 0.943763,-0.0012 1.611957,-0.92253 1.32,-1.82 l -2.66,-8.21 7,-5.07 c 1.075277,-0.810084 0.486081,-2.522863 -0.86,-2.5 z' /%3E%3C/g%3E%3C/svg%3E"); } .vector-menu-tabs #ca-watch.icon a:hover::before, .vector-menu-tabs #ca-unwatch.icon a:hover::before { background-image:none; } /* RecentChanges - prevent overflow on long summaries */ .client-js .mw-changeslist ul, .client-js .mw-changeslist table.mw-enhanced-rc { margin-left:0; } .mw-changeslist-line-inner-comment, .mw-changeslist-line .comment { font-size:0.9em; } .mw-userlink { overflow-wrap:anywhere; } } /* Hide the expandable navigation button for desktop users */ .mobile-nav-toggle { display: none; } /************* * End mobile * **************/ /* All local skin customizations should go below this line */ /********************************************************************/ /* Center the wiki's logo at the top of the page, above the content */ /* This is intended to work with the wiki.gg default loadout, */ /* and may not work if your wiki modifies or deviates from that */ /********************************************************************/ /* Copy this CSS to the **bottom** of your wiki's vector.css file. */ /********************************************************************/ /* Follow the instructions below to edit the needed variables */ /********************************************************************/ @media screen and ( min-width: 721px ) { :root { /**********************************/ /* REQUIRED to set */ /**********************************/ /*! CHANGE TO YOUR LOGO FILE'S DIMENSIONS IN PX !*/ --wiki-logo-file-width: 800; /* Width of the image file in px. Put a number without the letters `px`. */ --wiki-logo-file-height: 200; /* Height of the image file in px. Put a number without the letters `px`. */ /*! CHANGE TO THE HEIGHT THE LOGO SHOULD BE SHOWN AT ON DESKTOPS !*/ --wiki-logo-height: 100px; /**********************************/ /* optional to set */ /**********************************/ /*! OPTIONAL MARGIN AROUND THE LOGO - CHANGE IF NEEDED, THE MARGIN AREA WON'T LINK TO THE MAIN PAGE !*/ --wiki-logo-margin: 14px; /**********************************/ /* probably don't modify */ /**********************************/ --wiki-navigation-height: 2.5em; /**********************************/ /* do NOT modify these */ /**********************************/ --wiki-logo-ratio: calc( var(--wiki-logo-file-width) / var(--wiki-logo-file-height) ) ; --wiki-logo-width: calc(var(--wiki-logo-ratio) * var(--wiki-logo-height)); --wiki-head-height: calc(var(--wiki-logo-height) + (var(--wiki-logo-margin) * 2)); --wiki-topLogo-gadget-is-active: 1; /* this is used by other gadgets for compatibility */ --wiki-viewportWidth-and-noSidebar-gadgets-are-active:calc(var(--wiki-viewportWidth-gadget-is-active,0) * var(--wiki-noSidebar-gadget-is-active,0)); } #mw-panel { position:relative; top:0; margin-top:0; } #mw-head-base, #mw-page-base { height:calc(var(--wiki-navigation-height) + 0.5em); } #mw-page-base { height: var(--wiki-head-height); padding-top:var(--wikigg-header-height); } #mw-head-base { margin-top:-0.5em; } #left-navigation, #right-navigation { margin-top:calc(var(--wiki-head-height) + var(--wikigg-header-height)); } #mw-navigation #mw-panel div#p-logo { position:absolute; top:calc(0px - var(--wiki-head-height) - var(--wiki-navigation-height)); /* The --wiki-content-reduced-max-width is from Gadget:viewportWidth */ /* the rule below is written such that if that gadget is not in use, left is 50vw, */ /* but some more math is needed if it is */ left:max(max( calc((0px - ((100vw - min(var(--wiki-content-reduced-max-width,0px), 100vw)) / 2) + 50vw) /* <-- actual measurement | conditional checking --> */ * var(--wiki-viewportWidth-gadget-is-active,0)), /* this one should be selected if viewportWidth and noSidebar are both active */ calc(50vw /* <-- actual measurement | conditional checking --> */ - (((var(--wiki-noSidebar-gadget-is-active,99) - 1) + var(--wiki-viewportWidth-gadget-is-active,0)) * 99vw)) /* this one should be selected if only noSidebar is active */ ), calc(50vw /* <-- actual measurement | conditional checking --> */ - ((var(--wiki-viewportWidth-gadget-is-active,0) + var(--wiki-noSidebar-gadget-is-active,0)) * 99vw)) /* this one should be selected if both viewportWidth and noSidebar are not active */ ); transform:translateX(-50%); margin-top:var(--wiki-logo-margin); margin-bottom:var(--wiki-logo-margin); } #p-logo, #p-logo a { width:var(--wiki-logo-width); height:var(--wiki-logo-height); } } efe860badba80fd97c127e3e45edf2bce87ea698 Technocide Wiki/external 0 272 313 293 2025-04-12T09:06:42Z Tokepoke 586382 setup links wikitext text/x-wiki {{Main page box/start | title = External links }} <div class="mp-links columns-2"> * {{MP link|Official site|link=https://dextrousgames.net/}} * {{MP link|Discord|link=https://discord.gg/vZZvgR7kZs|image=Discord.svg|size=64x64px}} * {{MP link|X|link=https://x.com/DextrousGamesOy}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 37b0d867ae59baf027ac00a7aa358bb8bf8d23ce 314 313 2025-04-12T09:07:17Z Tokepoke 586382 layout wikitext text/x-wiki {{Main page box/start | title = External links }} <div class="mp-links columns-3"> * {{MP link|Official site|link=https://dextrousgames.net/}} * {{MP link|Discord|link=https://discord.gg/vZZvgR7kZs|image=Discord.svg|size=64x64px}} * {{MP link|X|link=https://x.com/DextrousGamesOy}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 1164413bd0046116f5a5cc4039353b3424cb6cfb Technocide Wiki/about 0 270 315 289 2025-04-12T09:08:22Z Tokepoke 586382 game summary wikitext text/x-wiki {{Main page box/start | title = About Technocide }} Technocide is a vertical scrolling shoot 'em up with a heavy emphasis on player weapons and abilities. You must not let enemies past you and reach your mothership! You will need quick tactical thinking as you weigh your weapons' strengths and weaknesses against your enemies and their positioning. <div style="text-align:right">[[Technocide|Read more...]]</div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> fe273f0fddc8a9449c00b7d076fc0eb4924f44b6 File:Bg-full.png 6 280 316 2025-04-12T09:14:43Z Tokepoke 586382 large background image wikitext text/x-wiki == Summary == large background image == Licensing == {{License|game}} 6c6117480249fead9d955232a8b2069497d096ec Technocide 0 281 317 2025-04-12T09:58:09Z Tokepoke 586382 High level description of the game and it's structure wikitext text/x-wiki Technocide is a vertical scrolling shoot-em-up with a roguelike structure, tactical gameplay, and an emphasis on player weapons and abilities. == The Goal of the game == In Technocide, the player must defend their mothership (known as the "carrier" in-game) from hostile AI drones. In gameplay terms this is done by shooting down enemy drones that appear from the top of the screen, before they reach the bottom of the screen. Each drone that exits the screen from the bottom does 1 point of damage to the carrier. The carrier can have a maximum of 7 hitpoints. If the last hitpoint of the carrier is lost, you lose the game and must start a new one from the beginning. == Roguelike structure == Technocide is structured loosely in the same way as modern roguelike games. A single playthrough is short overall, losing means starting over from the beginning instead of a save game or checkpoint (permadeath), and the content during the playthrough is procedurally generated. ===== Content structure ===== The game content in technocide is divided into 6 episodes, 5 of which are planets and one an asteroid field. An episode consists of 9 level nodes scattered across a map, some which are under attack by the enemy drones. The player chooses a level to play from the nodes that are under attack. Completing the level destroys the drone swarm at that node and grants the bonus reward associated with that node. During this, the other nodes are pillaged by the remaining drone swarms and then they move to new locations to attack, forming the next selection of levels for the player. This continues until each node is either saved by the player or pillaged. Starting with 4 drone swarms, this means each episode is 3 levels of gameplay long (4 + 3 + 2 = 9). When an episode is complete, the player moves on to the next episode. A new enemy type is introduced in each episode. After the last episode, a final boss level is presented and completing it ends the game in victory. The total length of a playthrough in technocide is 19 levels. ===== Procedural generation ===== The following things varies each playthrough by procedural generation: * Episode Level Nodes, and which ones are available at each selection step * Level contents are procedurally generated from available enemy types, in amounts depending on difficulty * Equipment earned by completing hard levels and the Mad Scientist Boss are randomized from their respective pools of unique equipment * Shop offers b17777d7298abcbd3e8a2d82c4cc5541b42f094e MediaWiki:Sidebar 8 282 318 2025-04-13T07:53:48Z Tokepoke 586382 Removed style edit shortcuts from sidebar, they are available under "SpecialPages" anyway wikitext text/x-wiki * navigation ** mainpage|mainpage-description ** recentchanges-url|recentchanges ** randompage-url|randompage ** helppage|help-mediawiki ** Special:AllPages|sidebar-all-pages ** Special:SpecialPages|sidebar-special-pages * wiki.gg ** support:|sidebar-support-wiki ** Wikigg-ticket-link|sidebar-submit-ticket ** wikigg-socialmedia-joinlink|wikigg-socialmedia-jointext-sidebar * SEARCH * TOOLBOX * LANGUAGES d1166a9c1e011865b5dbc668e78f631028ee41e0 File:Fusiongun.png 6 283 319 2025-04-13T07:59:38Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Fusionrailgun.png 6 284 320 2025-04-13T07:59:39Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Gatlingfusiongun.png 6 285 321 2025-04-13T07:59:40Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Gatlinggun.png 6 286 322 2025-04-13T07:59:41Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Gatlingrailgun.png 6 287 323 2025-04-13T07:59:41Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Railgun.png 6 289 325 2025-04-13T07:59:43Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Superfusiongun.png 6 290 326 2025-04-13T07:59:43Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Superrailgun.png 6 291 327 2025-04-13T07:59:44Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 File:Ultimate.png 6 292 328 2025-04-13T07:59:45Z Tokepoke 586382 wikitext text/x-wiki Weapon image == Licensing == {{License|game}} [[Category:Weapon Images]] 4ca46b450a1f1c10f5ba324150c700b07d986c85 Technocide Wiki/pages 0 273 329 295 2025-04-13T08:02:03Z Tokepoke 586382 Link to weapons page wikitext text/x-wiki {{Main page box/start | title = Useful wiki pages | class = centered-content }} <div class="mp-links columns-2"> * {{MP link|Weapons|link=Weapons}} * {{MP link|Random page|link=Special:Random}} * {{MP link|Example character|link=Example character|image=Example_character_image.png|size=92px}} * {{MP link|Example character infobox|link=Template:Example character infobox|image=Example_character_image.png|size=92px}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> c337a1ade51ec40eeb358bc4cfa891b61ab75035 Template:Weapon infobox 10 293 330 2025-04-13T08:27:12Z Tokepoke 586382 Created page with "{{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}300px]]}} |sections=General, Stats |General Info=Weapon Type |Stats=Damage, Projeciles per volley, Damage per volley, Rate of fire, Damage per second, Power per shot, Power per volley, Power per second, Damage from full power, Damage reduced each hit, Minimum damage, Overkill modifier }}" wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}300px]]}} |sections=General, Stats |General Info=Weapon Type |Stats=Damage, Projeciles per volley, Damage per volley, Rate of fire, Damage per second, Power per shot, Power per volley, Power per second, Damage from full power, Damage reduced each hit, Minimum damage, Overkill modifier }} 22d25a69dca4f573a1044daa9441300d729ee776 332 330 2025-04-13T08:39:35Z Tokepoke 586382 fix general section wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}300px]]}} |sections=General, Stats |General=Weapon Type |Stats=Damage, Projeciles per volley, Damage per volley, Rate of fire, Damage per second, Power per shot, Power per volley, Power per second, Damage from full power, Damage reduced each hit, Minimum damage, Overkill modifier }} 126891d301449d09052e248a8ff205a7681b3b14 336 332 2025-04-14T16:59:29Z Tokepoke 586382 smaller image wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}200px]]}} |sections=General, Stats |General=Weapon Type |Stats=Damage, Projeciles per volley, Damage per volley, Rate of fire, Damage per second, Power per shot, Power per volley, Power per second, Damage from full power, Damage reduced each hit, Minimum damage, Overkill modifier }} a9ecc9a22664f0276c294e6e6c55def65b8e5a73 338 336 2025-04-14T17:05:01Z Tokepoke 586382 fixed stat name wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}200px]]}} |sections=General, Stats |General=Weapon Type |Stats=Damage, Projectiles per volley, Damage per volley, Rate of fire, Damage per second, Power per shot, Power per volley, Power per second, Damage from full power, Damage reduced each hit, Minimum damage, Overkill modifier }} a0cc2e324d3c5f23458644447eff49cfcd999467 343 338 2025-04-14T17:19:43Z Tokepoke 586382 wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}200px]]}} |sections=General, Stats |General=Weapon Type |Stats=Damage, Projectiles per volley, Damage per volley, Rate of fire, Damage per second, Power per shot, Power per volley, Power per second, Damage from full power, Damage reduced per hit, Minimum damage, Overkill modifier }} aad78813c88c6bc8b77c4402f4d88bd2cb4032d7 345 343 2025-04-14T17:32:03Z Tokepoke 586382 Move some stats to a new "Calculations" category wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}200px]]}} |sections=General, Stats |General=Weapon Type |Stats=Damage, Projectiles per volley, Damage per volley, Rate of fire, Power consumption per shot, Power consumption per volley, Damage reduced per hit, Minimum damage, Overkill modifier |Calculations=Damage per second, Power consumption per second, Damage from full power }} bdb8a01d17c25a3b6826575200f199c4731cfc1c 347 345 2025-04-14T17:37:46Z Tokepoke 586382 Calculations category wikitext text/x-wiki {{#invoke:Infobox|main |kind=Weapon |sep=, |image={{#if:{{{image|}}}|[[File:{{{image}}}{{!}}200px]]}} |sections=General, Stats, Calculations |General=Weapon Type |Stats=Damage, Projectiles per volley, Damage per volley, Rate of fire, Power consumption per shot, Power consumption per volley, Damage reduced per hit, Minimum damage, Overkill modifier |Calculations=Damage per second, Power consumption per second, Damage from full power }} 901dbf35997151e3563525cc0ebbb1d009af637f Machine gun 0 294 331 2025-04-13T08:37:13Z Tokepoke 586382 first draft at weapon page wikitext text/x-wiki {{Weapon infobox |title=Machine gun |image=machinegun.png |Weapon Type=base weapon |Damage=1 |Rate of fire=15 shots per second |Damage per second=15 }} == Function == A rapid fire weapon. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. == Tips == Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine gun. == Recoil == The Machine gun has a slight recoil noticeable only when not moving: it slowly and steadily pushes the Fighter backwards. When moving around, the recoil is reduced to unnoticeable levels. d013fbb42157b5847e7fec70fe9dcf62e4303dc8 341 331 2025-04-14T17:16:49Z Tokepoke 586382 link to weapons and related supercharge weapons wikitext text/x-wiki {{Weapon infobox |title=Machine gun |image=machinegun.png |Weapon Type=base weapon |Damage=1 |Rate of fire=15 shots per second |Damage per second=15 }} == Function == A rapid fire [[Weapons|weapon]]. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. == Tips == Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine gun. == Recoil == The Machine gun has a slight recoil noticeable only when not moving: it slowly and steadily pushes the Fighter backwards. When moving around, the recoil is reduced to unnoticeable levels. == Supercharge == When supercharged, the Machine gun becomes the [[Gatling gun]]. When combined and supercharged with a [[Railgun]], they become the [[Gatling Railgun]], or with the [[Fusion Gun]] to become the [[Gatling Fusion gun]]. It is also a component of the [[Ultimate Weapon]]. 37d0337f59698692eb55ec698fd0d0d7f592b436 File:Machinegun.png 6 295 335 2025-04-14T13:13:39Z Tokepoke 586382 wikitext text/x-wiki == Licensing == {{License|game}} 5fdc0517c60eec1aa02a1fef9763fa88c38be9ad 337 335 2025-04-14T17:01:22Z Tokepoke 586382 Tokepoke uploaded a new version of [[File:Machinegun.png]] wikitext text/x-wiki == Licensing == {{License|game}} 5fdc0517c60eec1aa02a1fef9763fa88c38be9ad Railgun 0 296 339 2025-04-14T17:13:16Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Railgun |image=railgun.png |Weapon Type=base weapon |Damage=3 |Projectiles per volley=2 |Damage per volley=6 (7.5 vs medium and large enemies) |Rate of fire=1.67 shots per second |Damage per second=10 (12.5 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an ene..." wikitext text/x-wiki {{Weapon infobox |title=Railgun |image=railgun.png |Weapon Type=base weapon |Damage=3 |Projectiles per volley=2 |Damage per volley=6 (7.5 vs medium and large enemies) |Rate of fire=1.67 shots per second |Damage per second=10 (12.5 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A slow firing piercing weapon. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. == Tips == The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. == Recoil == The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. == Supercharge == When supercharged, the railgun becomes the [[Super Railgun]]. When combined and supercharged with a [[Machine gun]], they become the [[Gatling Railgun]], or with the [[Fusion Gun]] to become the [[Fusion Railgun]]. It is also a component of the [[Ultimate Weapon]]. 06da4dc2a452d3a14177c91ba20e6597c7ad7fd9 340 339 2025-04-14T17:14:39Z Tokepoke 586382 link back to weapons wikitext text/x-wiki {{Weapon infobox |title=Railgun |image=railgun.png |Weapon Type=base weapon |Damage=3 |Projectiles per volley=2 |Damage per volley=6 (7.5 vs medium and large enemies) |Rate of fire=1.67 shots per second |Damage per second=10 (12.5 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A slow firing piercing [[Weapons|weapon]]. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. == Tips == The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. == Recoil == The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. == Supercharge == When supercharged, the railgun becomes the [[Super Railgun]]. When combined and supercharged with a [[Machine gun]], they become the [[Gatling Railgun]], or with the [[Fusion Gun]] to become the [[Fusion Railgun]]. It is also a component of the [[Ultimate Weapon]]. e5141aa739a1ccf658c12d13d2ece5ac65fab034 Fusion gun 0 297 344 2025-04-14T17:28:21Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Fusion gun |image=fusiongun.png |Weapon Type=base weapon |Damage=2.5 - 0.5 depending on distance |Projectiles per volley=6 |Damage per volley=15 - 3 depending on distance |Rate of fire=1.67 volleys per second |Damage per second=25 - 5 depending on distance }} == Function == A slow firing shotgun type [[Weapons|weapon]]. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' dama..." wikitext text/x-wiki {{Weapon infobox |title=Fusion gun |image=fusiongun.png |Weapon Type=base weapon |Damage=2.5 - 0.5 depending on distance |Projectiles per volley=6 |Damage per volley=15 - 3 depending on distance |Rate of fire=1.67 volleys per second |Damage per second=25 - 5 depending on distance }} == Function == A slow firing shotgun type [[Weapons|weapon]]. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 0.5 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. == Tips == As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hitpoints and the remaining 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize damage output even against small targets and spreading it to other enemies behind. == Recoil == The Fusion gun has strong recoil. Combined with the short optimum range, players should "lean into" the recoil by constantly moving forward. == Supercharge == When supercharged, the Fusion gun becomes the [[Super Fusion gun]]. When combined and supercharged with a [[Machine gun]], they become the [[Gatling Fusion gun]], or with the [[Railgun]] to become the [[Fusion Railgun]]. It is also a component of the [[Ultimate Weapon]]. f51fcd457db7a16ba2042fc409cbee6efd940375 Gatling gun 0 298 346 2025-04-14T17:37:19Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Gatling gun |image=gatlinggun.png |Weapon Type=supercharged weapon |Damage=2.5 |Rate of fire=30 shots per second |Damage per second=75 |Power per shot=0.8% |Power per second=24% |Damage from full Power=312.5 }} == Function == Activating supercharge while using the Machine gun creates the Gatling gun, a very fast firing and high damage [[Weapons|weapon]]. == Tips == When using the fire button sparingly and firing with controlled bursts, it is a f..." wikitext text/x-wiki {{Weapon infobox |title=Gatling gun |image=gatlinggun.png |Weapon Type=supercharged weapon |Damage=2.5 |Rate of fire=30 shots per second |Damage per second=75 |Power per shot=0.8% |Power per second=24% |Damage from full Power=312.5 }} == Function == Activating supercharge while using the Machine gun creates the Gatling gun, a very fast firing and high damage [[Weapons|weapon]]. == Tips == When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. == Recoil == The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. == Combinations == Other supercharged weapons created from the same base [[Machine Gun]] are the [[Gatling Railgun]], [[Gatling Fusion gun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Gatling gun is the [[Spread Mod]]. bcefa8df4304205e104d857e6932b097b18c474c 348 346 2025-04-14T17:39:22Z Tokepoke 586382 stats fixes wikitext text/x-wiki {{Weapon infobox |title=Gatling gun |image=gatlinggun.png |Weapon Type=supercharged weapon |Damage=2.5 |Rate of fire=30 shots per second |Damage per second=75 |Power consumption per shot=0.8% |Power consumption per second=24% |Damage from full power=312.5 }} == Function == Activating supercharge while using the Machine gun creates the Gatling gun, a very fast firing and high damage [[Weapons|weapon]]. == Tips == When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. == Recoil == The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. == Combinations == Other supercharged weapons created from the same base [[Machine Gun]] are the [[Gatling Railgun]], [[Gatling Fusion gun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Gatling gun is the [[Spread Mod]]. 9cc9ae69b303ea2a3f9444b94ad352571cd2ddd8 349 348 2025-04-14T17:47:30Z Tokepoke 586382 wikitext text/x-wiki {{Weapon infobox |title=Gatling gun |image=gatlinggun.png |Weapon Type=supercharged weapon |Damage=2.5 |Rate of fire=30 shots per second |Damage per second=75 |Power consumption per shot=0.8% |Power consumption per second=24% |Damage from full power=312.5 }} == Function == Activating supercharge while using the [[Machine gun]] creates the Gatling gun, a very fast firing and high damage [[Weapons|weapon]]. == Tips == When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. == Recoil == The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. == Combinations == Other supercharged weapons created from the same base [[Machine Gun]] are the [[Gatling Railgun]], [[Gatling Fusion gun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Gatling gun is the [[Spread Mod]]. 8c169a7b1cbb9f927561d4c61be179ffe2b3a9b1 Super Railgun 0 299 350 2025-04-14T17:49:01Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Super Railgun |image=superrailgun.png |Weapon Type=supercharged weapon |Damage=55 (68.75 vs medium and large enemies) |Rate of fire=1 shot per second |Damage per second=55 (68.75 vs medium and large enemies) |Power consumption per shot=25% |Power consumption per second=25% |Damage from full power=220 (275 vs medium and large enemies) |Damage reduced per hit=5 |Minimum damage=5 |Overkill modifier=-50% }} == Function == A [[Weapons|weapon]] made b..." wikitext text/x-wiki {{Weapon infobox |title=Super Railgun |image=superrailgun.png |Weapon Type=supercharged weapon |Damage=55 (68.75 vs medium and large enemies) |Rate of fire=1 shot per second |Damage per second=55 (68.75 vs medium and large enemies) |Power consumption per shot=25% |Power consumption per second=25% |Damage from full power=220 (275 vs medium and large enemies) |Damage reduced per hit=5 |Minimum damage=5 |Overkill modifier=-50% }} == Function == A [[Weapons|weapon]] made by supercharging the base [[Railgun]]. Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. == Tips == Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out just about everything behind it. == Recoil == The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. == Combinations == Other supercharged weapons created from the same base [[Railgun]] are the [[Gatling Railgun]], [[Fusion Railgun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Super Railgun is the [[Smart Shot]]. 889e20d2ceaa04a162e60dbe2969314ac77ddd7d Super Fusion gun 0 300 351 2025-04-14T17:53:02Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Super Fusion gun |image=superfusiongun.png |Weapon Type=supercharged weapon |Damage=2.5 ~ 2 depending on distance |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=87.5 ~ 70 depending on distance |Rate of fire=0.8 volleys per second ( = 1.25 second cooldown) |Damage per second=70 ~ 56 depending on distance |Power consumption per volley=33% |Power consumption per second=26.4% |Damage from full power=~265 to ~212 depending on dista..." wikitext text/x-wiki {{Weapon infobox |title=Super Fusion gun |image=superfusiongun.png |Weapon Type=supercharged weapon |Damage=2.5 ~ 2 depending on distance |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=87.5 ~ 70 depending on distance |Rate of fire=0.8 volleys per second ( = 1.25 second cooldown) |Damage per second=70 ~ 56 depending on distance |Power consumption per volley=33% |Power consumption per second=26.4% |Damage from full power=~265 to ~212 depending on distance }} == Function == The Super Fusion gun fires a massive volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). == Tips == The Super Fusion gun is best used this way to essentially clear the screen of small enemies, and can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. == Recoil == The Super Fusion gun has massive recoil. == Combinations == Other supercharged weapons created from the same base [[Fusion gun]] are the [[Gatling Fusion gun]], [[Fusion Railgun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Super Fusion gun is the [[Bomb Mod]]. 2a6b99cda0dc5add021f66f1531b6099b7d5c736 352 351 2025-04-14T17:55:59Z Tokepoke 586382 wikitext text/x-wiki {{Weapon infobox |title=Super Fusion gun |image=superfusiongun.png |Weapon Type=supercharged weapon |Damage=2.5 ~ 2 depending on distance |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=87.5 ~ 70 depending on distance |Rate of fire=0.8 volleys per second ( = 1.25 second cooldown) |Damage per second=70 ~ 56 depending on distance |Power consumption per volley=33% |Power consumption per second=26.4% |Damage from full power=~265 to ~212 depending on distance }} == Function == A massive shotgun type [[Weapons|weapon]] created by supercharging the [[Fusion gun]] The Super Fusion gun fires a volley of 35 pellets, consisting of 5 consecutive volleys of increasing size releasing in rapid succession. Like the Fusion gun, the pellets lose damage over time, but to a much lesser degree. Firing from the bottom of the screen, each pellet still has approximately 2 damage when reaching the top of the screen (down from 2.5, a ~25% decrease). == Tips == The Super Fusion gun is often best used to clear the screen of small enemies, and it can generate a lot of Reputation Points with large Combos. Waves such as the Shooting Star Formation and the Short Dart Wave are quickly and easily dealt with a volley from the Super Fusion gun. The Super Fusion gun also has a high potential for Overkill: unloading to a weakened Hauler that is near the bottom releases a lot of shrapnel, slightly boosting damage potential and accruing some Overkill Points. It is not super advantageous but can be fun to do. The same can't be performed to a small enemy: it is blasted away before most of the projectiles get a chance to hit it. == Recoil == The Super Fusion gun has massive recoil. == Combinations == Other supercharged weapons created from the same base [[Fusion gun]] are the [[Gatling Fusion gun]], [[Fusion Railgun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Super Fusion gun is the [[Bomb Mod]]. 44496efe012fe7887ed1ab4a10aac8247ba7ced3 Gatling Railgun 0 301 353 2025-04-14T18:03:18Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Gatling Railgun |image=gatlingrailgun.png |Weapon Type=supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Rate of fire=15 shots per second |Damage per second=45 (56.25 vs medium and large enemies) |Power consumption per shot=1.6% |Power consumption per second=24% |Damage from full power=187.5 (234.375 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A supercharged [[Weapons|weapon]] combined f..." wikitext text/x-wiki {{Weapon infobox |title=Gatling Railgun |image=gatlingrailgun.png |Weapon Type=supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Rate of fire=15 shots per second |Damage per second=45 (56.25 vs medium and large enemies) |Power consumption per shot=1.6% |Power consumption per second=24% |Damage from full power=187.5 (234.375 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A supercharged [[Weapons|weapon]] combined from the [[Machine gun]] and [[Railgun]], the Gatling Railgun is possibly the most versatile of the Super Weapons: it practically adds the piercing function to the already versatile Gatling gun. It fires projectiles functionally identical to the basic railgun, but at a high rate of fire. The trade off is the lowest single target damage of all the Super Weapons, but this statistic is deceptive as hitting only two enemies already nearly doubles its total damage. == Tips == The best at performing a continuous fire sweep from one side to the other. == Recoil == The recoil of the Gatling Railgun is mild compared to the other Super Weapons and easily manageable. It is still impossible to move forward while firing but the backwards force can be almost entirely canceled out by trying to move forward. == Mods == The superweapon mods that apply to the Gatling Railgun are the [[Spread Mod]] and [[Smart Shot]]. 5923ad3354de2f6ed50949118721436b211bac96 367 353 2025-04-15T16:16:08Z Tokepoke 586382 overkill modifier wikitext text/x-wiki {{Weapon infobox |title=Gatling Railgun |image=gatlingrailgun.png |Weapon Type=supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Rate of fire=15 shots per second |Damage per second=45 (56.25 vs medium and large enemies) |Power consumption per shot=1.6% |Power consumption per second=24% |Damage from full power=187.5 (234.375 vs medium and large enemies) |Damage reduced per hit=0.2 |Overkill modifier=-40% }} == Function == A supercharged [[Weapons|weapon]] combined from the [[Machine gun]] and [[Railgun]], the Gatling Railgun is possibly the most versatile of the Super Weapons: it practically adds the piercing function to the already versatile Gatling gun. It fires projectiles functionally identical to the basic railgun, but at a high rate of fire. The trade off is the lowest single target damage of all the Super Weapons, but this statistic is deceptive as hitting only two enemies already nearly doubles its total damage. == Tips == The best at performing a continuous fire sweep from one side to the other. == Recoil == The recoil of the Gatling Railgun is mild compared to the other Super Weapons and easily manageable. It is still impossible to move forward while firing but the backwards force can be almost entirely canceled out by trying to move forward. == Mods == The superweapon mods that apply to the Gatling Railgun are the [[Spread Mod]] and [[Smart Shot]]. 6eb5dd709e6b09ce7d58467abb4102df6747b7c3 Gatling Fusion gun 0 302 354 2025-04-14T18:15:28Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Gatling Fusion gun |image=gatlingfusiongun.png |Weapon Type=supercharged combination weapon |Damage=2.5 - 0.5 depending on distance |Projectiles per volley=6 |Damage per volley=15 - 3 depending on distance |Rate of fire=7.5 volleys per second |Damage per second=112.5 - 22.5 depending on distance |Power consumption per volley=4% |Power consumption per second=30% |Damage from full power=375 - 75 depending on distance }} == Function == A Weapons|..." wikitext text/x-wiki {{Weapon infobox |title=Gatling Fusion gun |image=gatlingfusiongun.png |Weapon Type=supercharged combination weapon |Damage=2.5 - 0.5 depending on distance |Projectiles per volley=6 |Damage per volley=15 - 3 depending on distance |Rate of fire=7.5 volleys per second |Damage per second=112.5 - 22.5 depending on distance |Power consumption per volley=4% |Power consumption per second=30% |Damage from full power=375 - 75 depending on distance }} == Function == A [[Weapons|weapon]] created from supercharging the combination of a [[Machine gun]] and [[Fusion gun]], the Gatling Fusion gun has the highest damage potential and damage per second out of all the Super Weapons (not counting the secret [[Ultimate Weapon]]). However using that damage potential requires the player to be on top of, or near the target enemies, and an extended period of time for continuous fire. This can prove challenging with the Supercharged mode's slow movement speed and high recoil of the Gatling Fusion gun. == Tips == Use for tough targets only and up close. Single large enemies will be taken out quickly and [[Brute|Brutes]] can be taken down with a quick two-shot burst. This is the most energy-efficient weapon to damage bosses if you can stay on them without getting hit. == Recoil == The Gatling Fusion gun has medium recoil for a supercharged weapon. Moving forward while firing only moves you slightly back, making it possible to unload continuously up close at big enemies moving slowly towards you. == Mods == The superweapon mod that applies to the Super Railgun is the [[Smart Shot]]. 0ebdcf223c77050e2a86892c4d8fde1fc641e746 368 354 2025-04-15T16:17:07Z Tokepoke 586382 minimum damage wikitext text/x-wiki {{Weapon infobox |title=Gatling Fusion gun |image=gatlingfusiongun.png |Weapon Type=supercharged combination weapon |Damage=2.5 - 1 depending on distance |Projectiles per volley=6 |Damage per volley=15 - 6 depending on distance |Rate of fire=7.5 volleys per second |Damage per second=112.5 - 45 depending on distance |Power consumption per volley=4% |Power consumption per second=30% |Damage from full power=375 - 150 depending on distance }} == Function == A [[Weapons|weapon]] created from supercharging the combination of a [[Machine gun]] and [[Fusion gun]], the Gatling Fusion gun has the highest damage potential and damage per second out of all the Super Weapons (not counting the secret [[Ultimate Weapon]]). However using that damage potential requires the player to be on top of, or near the target enemies, and an extended period of time for continuous fire. This can prove challenging with the Supercharged mode's slow movement speed and high recoil of the Gatling Fusion gun. == Tips == Use for tough targets only and up close. Single large enemies will be taken out quickly and [[Brute|Brutes]] can be taken down with a quick two-shot burst. This is the most energy-efficient weapon to damage bosses if you can stay on them without getting hit. == Recoil == The Gatling Fusion gun has medium recoil for a supercharged weapon. Moving forward while firing only moves you slightly back, making it possible to unload continuously up close at big enemies moving slowly towards you. == Mods == The superweapon mod that applies to the Super Railgun is the [[Smart Shot]]. 6ee197bafe13a0a7e626748df89549365cccfa1a Fusion Railgun 0 303 355 2025-04-14T18:23:33Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Fusion Railgun |image=fusionrailgun.png |Weapon Type=supercharged weapon |Damage=3 (3.75 vs medium and large enemies) |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=105 (131.25 vs medium and large enemies) |Rate of fire=0.8 volleys per second |Damage per second=84 (105 vs medium and large enemies) |Power consumption per volley=50% |Power consumption per second=40% |Damage from full power=210 (262.5 vs medium and large enemies)..." wikitext text/x-wiki {{Weapon infobox |title=Fusion Railgun |image=fusionrailgun.png |Weapon Type=supercharged weapon |Damage=3 (3.75 vs medium and large enemies) |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=105 (131.25 vs medium and large enemies) |Rate of fire=0.8 volleys per second |Damage per second=84 (105 vs medium and large enemies) |Power consumption per volley=50% |Power consumption per second=40% |Damage from full power=210 (262.5 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A [[Weapons|weapon]] made by supercharging the combination of a [[Railgun]] and [[Fusion gun]]. Functionally identical to the [[Super Fusion gun]] but with each pellet replaced with a basic Railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. == Tips == A quick panic clear from a screen full of enemies. Will destroy just about everything in its frontal cone, but won't help with your flanks in such desperate situations. == Recoil == The strongest recoil in the game. Your ship will jump back half a screen even with full forward movement. Not that it matters since it's best fired from the bottom of the screen anyway. == Mods == The superweapon mods that apply to the Fusion Railgun are the [[Smart Shot]] and [[Bomb Mod]]. ace98fff2049a303c58242146e3dba71f7886bf0 356 355 2025-04-14T18:23:50Z Tokepoke 586382 wikitext text/x-wiki {{Weapon infobox |title=Fusion Railgun |image=fusionrailgun.png |Weapon Type=supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=105 (131.25 vs medium and large enemies) |Rate of fire=0.8 volleys per second |Damage per second=84 (105 vs medium and large enemies) |Power consumption per volley=50% |Power consumption per second=40% |Damage from full power=210 (262.5 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == A [[Weapons|weapon]] made by supercharging the combination of a [[Railgun]] and [[Fusion gun]]. Functionally identical to the [[Super Fusion gun]] but with each pellet replaced with a basic Railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. == Tips == A quick panic clear from a screen full of enemies. Will destroy just about everything in its frontal cone, but won't help with your flanks in such desperate situations. == Recoil == The strongest recoil in the game. Your ship will jump back half a screen even with full forward movement. Not that it matters since it's best fired from the bottom of the screen anyway. == Mods == The superweapon mods that apply to the Fusion Railgun are the [[Smart Shot]] and [[Bomb Mod]]. 6690d942794fbf31e92f1da9e8c89e545ba6dc73 369 356 2025-04-15T16:17:58Z Tokepoke 586382 overkill modifier wikitext text/x-wiki {{Weapon infobox |title=Fusion Railgun |image=fusionrailgun.png |Weapon Type=supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Projectiles per volley=5 + 6 + 7 + 8 + 9 = 35 |Damage per volley=105 (131.25 vs medium and large enemies) |Rate of fire=0.8 volleys per second |Damage per second=84 (105 vs medium and large enemies) |Power consumption per volley=50% |Power consumption per second=40% |Damage from full power=210 (262.5 vs medium and large enemies) |Damage reduced per hit=0.2 |Overkill modifier=-40% }} == Function == A [[Weapons|weapon]] made by supercharging the combination of a [[Railgun]] and [[Fusion gun]]. Functionally identical to the [[Super Fusion gun]] but with each pellet replaced with a basic Railgun projectile. Needs a lot of enemies on screen to unlock its full potential. Excessively powerful for most situations with a Power drain to match. == Tips == A quick panic clear from a screen full of enemies. Will destroy just about everything in its frontal cone, but won't help with your flanks in such desperate situations. == Recoil == The strongest recoil in the game. Your ship will jump back half a screen even with full forward movement. Not that it matters since it's best fired from the bottom of the screen anyway. == Mods == The superweapon mods that apply to the Fusion Railgun are the [[Smart Shot]] and [[Bomb Mod]]. 052ab0c30cd53081ce99245ae8cb97f16c809ca9 Ultimate Weapon 0 304 357 2025-04-14T18:37:37Z Tokepoke 586382 Created page with "{{Weapon infobox |title=Ultimate Weapon |image=ultimate.png |Weapon Type=secret supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Projectiles per volley=6 |Damage per volley=18 (22.5 vs medium and large enemies) |Rate of fire=7.5 volleys per second |Damage per second=135 (168.75 vs medium and large enemies) |Power consumption per volley=7% |Power consumption per second=52.5% |Damage from full power=~257 (~321 vs medium and large enemies) |Da..." wikitext text/x-wiki {{Weapon infobox |title=Ultimate Weapon |image=ultimate.png |Weapon Type=secret supercharged combination weapon |Damage=3 (3.75 vs medium and large enemies) |Projectiles per volley=6 |Damage per volley=18 (22.5 vs medium and large enemies) |Rate of fire=7.5 volleys per second |Damage per second=135 (168.75 vs medium and large enemies) |Power consumption per volley=7% |Power consumption per second=52.5% |Damage from full power=~257 (~321 vs medium and large enemies) |Damage reduced per hit=0.2 }} == Function == The Ultimate Weapon combines all three base [[Weapons|weapons]] into a ridiculously overpowered gun that depletes Power alarmingly fast. Functionally identical to the [[Gatling Fusion gun]] but with each pellet replaced with a basic [[Railgun]] projectile. Essentially rapid-fire rail-shotgun. The Ultimate weapon can only be activated when at 100% Power. == Controls == The Ultimate weapon is activated either by pressing all three separate weapon buttons simultaneously (Keyboard default: S,D,F), or by pressing Cycle Next Weapon and Cycle Previous Weapon simultaneously (Gamepad default: RB + LB (Xbox), R1 + L1(Playstation)). Technocide offers no hint on it's existence until the player activates it for the first time on accident, after which they get a brief reaction from the head scientist and a one-time instruction screen after the level. == Tips == One of the most power efficient weapons if used correctly. Once you get up to full power, you can fire a short burst when needed for clearing large amounts of enemies. Short bursts do not consume too much power so that it can be available again quickly. This tactic is further boosted by [[Spread Mod]], as a two round burst covers almost the entire screen. == Recoil == The Ultimate Weapon has medium recoil for a supercharged weapon. You will move backwards when firing full-auto even when applying full forward movement. == Mods == All superweapon mods apply to the Ultimate Weapon: [[Spread Mod]], [[Smart Shot]], [[Bomb Mod]]. It is however only possible to acquire a maximum of two of these at one time by picking one of them from the previous playthrough in a difficulty level below Expert. c13e40e056e7f45210cabcaeae159a459d4bdfa4 Spread Mod 0 305 358 2025-04-14T18:38:55Z Tokepoke 586382 Created page with "The Spread Mod affects the [[Gatling gun]], [[Gatling Railgun]], [[Gatling Fusion gun]] and [[Ultimate Weapon]]. It changes the firing pattern to a "double helix" wave pattern. For the Gatling Gun and Gatling Railgun, this means a near doubling of damage at the cost of accuracy, but no extra power cost. It is not exactly double because when the waves cross in the center, a single shot is fired instead of two. For the Gatling Fusion gun and The Ultimate Weapon, every othe..." wikitext text/x-wiki The Spread Mod affects the [[Gatling gun]], [[Gatling Railgun]], [[Gatling Fusion gun]] and [[Ultimate Weapon]]. It changes the firing pattern to a "double helix" wave pattern. For the Gatling Gun and Gatling Railgun, this means a near doubling of damage at the cost of accuracy, but no extra power cost. It is not exactly double because when the waves cross in the center, a single shot is fired instead of two. For the Gatling Fusion gun and The Ultimate Weapon, every other volley is a double volley fired to both sides, adding only 50% additional shots. This is very beneficial for the Ultimate weapon as most of the screen can be hit with railgun shots with a short 2 round burst for a mere 14% Power cost. dfc93976be18baf121e74f85937dfd16e67d7dbf 359 358 2025-04-14T18:39:47Z Tokepoke 586382 wikitext text/x-wiki A Super[[Weapons|weapon]] mod. The Spread Mod affects the [[Gatling gun]], [[Gatling Railgun]], [[Gatling Fusion gun]] and [[Ultimate Weapon]]. It changes the firing pattern to a "double helix" wave pattern. For the Gatling Gun and Gatling Railgun, this means a near doubling of damage at the cost of accuracy, but no extra power cost. It is not exactly double because when the waves cross in the center, a single shot is fired instead of two. For the Gatling Fusion gun and The Ultimate Weapon, every other volley is a double volley fired to both sides, adding only 50% additional shots. This is very beneficial for the Ultimate weapon as most of the screen can be hit with railgun shots with a short 2 round burst for a mere 14% Power cost. bef71ecc6124225a0546d237bc8fce3e9f62bef5 Smart Shot 0 306 360 2025-04-14T18:41:59Z Tokepoke 586382 Created page with "== Function == A Super[[Weapons|weapon]] mod. The Smart Shot affects the [[Super Railgun]], [[Gatling Railgun]], [[Fusion Railgun]] and The [[Ultimate Weapon]]. After hitting an enemy, it makes the railgun shot change direction towards another enemy. The downside is that damage is reduced much more for each hit and it does not have the same damage potential for hitting lined up enemies. The upside is that enemies do not need to be lined up to hit multiple of them at the..." wikitext text/x-wiki == Function == A Super[[Weapons|weapon]] mod. The Smart Shot affects the [[Super Railgun]], [[Gatling Railgun]], [[Fusion Railgun]] and The [[Ultimate Weapon]]. After hitting an enemy, it makes the railgun shot change direction towards another enemy. The downside is that damage is reduced much more for each hit and it does not have the same damage potential for hitting lined up enemies. The upside is that enemies do not need to be lined up to hit multiple of them at the same time. == Tips == It is inadvisable to use the Smart Shot with the Space Compactor equipment, as the unmodded railguns hit bunched up enemies much harder. Consider toggling the mod off for such situations. cfe9cb513a18ce891f1392103730e6475549f3a1 370 360 2025-04-15T16:22:07Z Tokepoke 586382 damage reduction numbers wikitext text/x-wiki == Function == A Super[[Weapons|weapon]] mod. The Smart Shot affects the [[Super Railgun]], [[Gatling Railgun]], [[Fusion Railgun]] and The [[Ultimate Weapon]]. After hitting an enemy, it makes the railgun shot change direction towards another enemy. The downside is that damage is reduced much more for each hit (3 -> 8 for Super Railgun, 0.2 -> 0.8 for the others) so it does not have the same damage potential for hitting lined up enemies. The upside is that enemies do not need to be lined up to hit multiple of them at the same time. == Tips == It is inadvisable to use the Smart Shot with the Space Compactor equipment, as the unmodded railguns hit bunched up enemies much harder. Consider toggling the mod off for such situations. a6d366f714a2828ce31fcfa12b2a56282565e12a Bomb Mod 0 307 361 2025-04-14T18:44:11Z Tokepoke 586382 Created page with "A Super[[Weapons|weapon]] mod. The Bomb mod affects the [[Super Fusion gun]], [[Gatling Fusion gun]], [[Fusion Railgun]] and [[Ultimate Weapon]]. The Bomb Mod changes these weapons so that instead of firing a volley of shots, it launches a bomb, which upon detonation, releases double the amount of shots compared to the unmodded volley in all directions. How the bomb detonates depends whether it is a Gatling type Super Weapon or not. For the Super Fusion gun and Fusion..." wikitext text/x-wiki A Super[[Weapons|weapon]] mod. The Bomb mod affects the [[Super Fusion gun]], [[Gatling Fusion gun]], [[Fusion Railgun]] and [[Ultimate Weapon]]. The Bomb Mod changes these weapons so that instead of firing a volley of shots, it launches a bomb, which upon detonation, releases double the amount of shots compared to the unmodded volley in all directions. How the bomb detonates depends whether it is a Gatling type Super Weapon or not. For the Super Fusion gun and Fusion Railgun, the bomb detonates when the Fire button is released. This makes it possible for a skilled player to aim and detonate the bomb on top or "inside" an enemy, instantly dealing its full damage to it and possibly releasing extreme amounts of shrapnel from Overkill. For the Gatling Fusion gun and The Ultimate Weapon, bombs detonate on contact with enemies, or when reaching the top of the screen. These bombs never detonate inside enemies when fired from farther away but it is possible when getting on top of the enemy yourself. The bomb mod also reduces recoil by a considerable amount, as most of the explosive force of the weapon is contained within the launched bomb. 68a9cb6d95829c5c4a60d244c5cc001dda751773 Weapons 0 277 362 342 2025-04-14T18:53:30Z Tokepoke 586382 wikitext text/x-wiki Technocide features three main weapons to use in the game: [[Machine gun]], [[Railgun]] and [[Fusion gun]]. Each are distinct from each other and have their advantages and disadvantages for different situations. Once available, the player can swap between these weapons at any time. The weapons operate in pairs in the default Fighter mode. In difficulty levels Casual, Easy, Normal and Hard, the player starts only with the Machine Gun. On Expert difficulties, the player starts with all three weapons and the ability to mix weapons. All weapons have recoil which pushes the player backwards. Recoil can be used to exceed the player's normal maximum speed when moving backwards. === Controls === The main weapon is fired using a "Fire" button. * Defaults: ** Keyboard: Space ** Gamepad: RT (Xbox) / R2 (Playstation) Weapons can be swapped either with separate buttons assigned to each weapon, or cycled through with next/previous buttons. * Defaults: ** Keyboard: [S] = [[Fusion gun]], [D] = [[Railgun]], [F] = [[Machine gun]] ** Gamepad: RB (Xbox) / R1 (Playstation) = Cycle Previous Weapon, LB (Xbox) / L1 (Playstation) = Cycle Next Weapon == Supercharge == Each main weapon can be supercharged given enough power. Power is collected in the form of Power Cells that are dropped from enemies when destroyed by one of the main weapons in Fighter mode. Each collected Power Cell fills the player's Power Meter by 0.5%. Additional Power Cells may drop if the enemy receives enough overkill with one of the main weapons. Power Cells are not dropped on kill or Overkill from Supercharged weapons, or equipment (exceptions: Mining Laser and Gun Drone). There must be enough power collected for at least a single shot or volley to be able to activate Supercharged mode. There is a brief transformation time between Fighter mode and Supercharged mode, where the player can't fire their main weapon at all, making timing of the transformation crucial. The player's movement speed is also slowed by 40% when in Supercharged mode. Once in Supercharged mode, the main weapon is swapped for a supercharged variant, which are immensely powerful, but shots are limited by the collected Power. === Controls === Supercharge can be controlled in one of two ways: hold or toggle mode. In hold mode, Supercharge is active for as long as the button is held. In toggle mode, Supercharge is activated by pressing the button, and deactivated by pressing the button again. * Defaults: ** Keyboard: [A] (toggle) ** Gamepad: LT (Xbox) / L2 (Playstation) (hold) === Supercharged weapons === * [[Gatling gun]] * [[Super Railgun]] * [[Super Fusion gun]] == Mixed Weapons == Mixed weapons are introduced in the Mad Scientist Boss, after which they are available to use freely. In Expert modes mixed weapons are enabled from the beginning. In the default Fighter mode, weapons are used in pairs. Mixed weapons allows for switching to mismatched pairs. Both weapons' fire rate is reduced to half of their respective fire rates and offers no clear benefit in Fighter mode. However, once Supercharge is activated with a mismatched pair, a new Super Weapon is created combining the advantages of both weapons. === Controls === Weapon mixing can be done in one of two different ways: either pressing down two weapon buttons simultaneously, or using separate buttons to cycle either the left or right weapon separately. The difference between cycling the left or right weapon is how it affects the normal cycle weapons button. Normal cycle weapons switches to a matched pair that is the next or previous weapon from the left weapon. So using cycle left buttons affects normal the following normal weapon cycling while cycle right does not. * Defaults: ** Keyboard: Press two weapon buttons (S,D,F) simultaneously ** Gamepad: D-pad left and right to Cycle Right Weapon === Supercharged Combination Weapons === * [[Gatling Railgun]] (Supercharged Machine gun + Railgun) * [[Gatling Fusion gun]] (Supercharged Machine gun + Fusion gun) * [[Fusion Railgun]] (Supercharged Fusion gun + Railgun) === (Secret) [[Ultimate Weapon]] === == Mods == There are three Superweapon Mods in Technocide. Each affects one of the main weapons' Supercharged variant and all mixed weapons derived from that main weapon. All mods affect The [[Ultimate Weapon]]. A Super Weapon Mod can be earned by completing the hard level in the Asteroid Field, marked as "Reward: Special". Once completed, the player may choose one of the mods they do not already own. It is possible to acquire two mods if one mod was carried over from the previous run instead of an equipment. The mods function simultaneously when the appropriate mixed Super Weapon is used. === Controls === Mods are not simple upgrades and have some trade-offs. A mod can be toggled on/off at will if one wishes to use the unmodded version of the weapon. * Default: ** Keyboard: [G] ** Gamepad: D-pad up === Superweapon mods === * [[Spread Mod]] * [[Smart Shot]] * [[Bomb Mod]] 4cbf308114ad5fd2609b626c13e2d8c719c5d44d Railgun 0 296 363 340 2025-04-15T16:08:01Z Tokepoke 586382 overkill modifier wikitext text/x-wiki {{Weapon infobox |title=Railgun |image=railgun.png |Weapon Type=base weapon |Damage=3 |Projectiles per volley=2 |Damage per volley=6 (7.5 vs medium and large enemies) |Rate of fire=1.67 shots per second |Damage per second=10 (12.5 vs medium and large enemies) |Damage reduced per hit=0.2 |Overkill modifier=-40% }} == Function == A slow firing piercing [[Weapons|weapon]]. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. == Tips == The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. == Recoil == The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. == Supercharge == When supercharged, the railgun becomes the [[Super Railgun]]. When combined and supercharged with a [[Machine gun]], they become the [[Gatling Railgun]], or with the [[Fusion Gun]] to become the [[Fusion Railgun]]. It is also a component of the [[Ultimate Weapon]]. abce068bcc76e28c3e29416c5bc13aabe2d8598d 377 363 2025-04-18T15:50:57Z Tokepoke 586382 fix link wikitext text/x-wiki {{Weapon infobox |title=Railgun |image=railgun.png |Weapon Type=base weapon |Damage=3 |Projectiles per volley=2 |Damage per volley=6 (7.5 vs medium and large enemies) |Rate of fire=1.67 shots per second |Damage per second=10 (12.5 vs medium and large enemies) |Damage reduced per hit=0.2 |Overkill modifier=-40% }} == Function == A slow firing piercing [[Weapons|weapon]]. The railgun shoots a pair of shots once every 0.6 seconds. Unlike the other weapons, railgun projectiles do not stop when hitting an enemy. Instead it deals its damage to the hit enemy and then the damage of the projectile is reduced slightly, dealing less and less damage to each enemy hit. If the damage is reduced to zero, the projectile disappears. The Railgun and all Supercharged variants derived from it deal +25% damage vs medium and large enemies. == Tips == The railgun has the lowest damage output against a single target out of all the weapons. However it scales up the most depending on how many enemies it can hit. The maximum damage a railgun shot can inflict is 24 per projectile when hitting 15 small targets lined up vertically. This makes it the weapon of choice on extreme difficulties with multiple gun drones. A tactical advantage of the railgun is the ability to snipe important enemies that are behind other enemies and would be impossible to hit with any other weapon. Most often a hovering Dart is a prime target for sniping with the railgun, but also Mines, Viruses and Floating Turrets. == Recoil == The Railgun has medium recoil that noticeably pushes the Fighter back whether being stationary or actively moving. == Supercharge == When supercharged, the railgun becomes the [[Super Railgun]]. When combined and supercharged with a [[Machine gun]], they become the [[Gatling Railgun]], or with the [[Fusion gun]] to become the [[Fusion Railgun]]. It is also a component of the [[Ultimate Weapon]]. 27078ab75db232389850ff732ade4d103cb55136 Fusion gun 0 297 364 344 2025-04-15T16:09:37Z Tokepoke 586382 minimum damage wikitext text/x-wiki {{Weapon infobox |title=Fusion gun |image=fusiongun.png |Weapon Type=base weapon |Damage=2.5 - 1 depending on distance |Projectiles per volley=6 |Damage per volley=15 - 6 depending on distance |Rate of fire=1.67 volleys per second |Damage per second=25 - 10 depending on distance }} == Function == A slow firing shotgun type [[Weapons|weapon]]. The Fusion gun shoots six pellets once every 0.6 seconds, alternating the side from which it fires each time. The pellets' damage starts off at 2.5, decreasing linearly over time very quickly. Once the damage falls below 1 the pellets pops out of existence. Maximum damage is therefore inflicted by getting as close as possible to the target. == Tips == As there is no collision between the player and enemies, it is possible to move right on top of enemies to reliably deliver the maximum damage of 15 per volley. One must be wary of doing this against enemies that shoot, as it will become more difficult to dodge shots. Doing such contact shots is encouraged even against small enemies to take advantage of the Overkill mechanic: a small enemy (Drone or Dart) has 2 hitpoints and the remaining 13 damage of the volley are converted into shrapnel projectiles, which keep their damage over distance unlike the Fusion gun's own projectiles, effectively increasing the Fusion gun's range. Thus using overkill it is possible to maximize damage output even against small targets and spreading it to other enemies behind. == Recoil == The Fusion gun has strong recoil. Combined with the short optimum range, players should "lean into" the recoil by constantly moving forward. == Supercharge == When supercharged, the Fusion gun becomes the [[Super Fusion gun]]. When combined and supercharged with a [[Machine gun]], they become the [[Gatling Fusion gun]], or with the [[Railgun]] to become the [[Fusion Railgun]]. It is also a component of the [[Ultimate Weapon]]. c11aaf44017d10c7e582bcbc7492da6b938f79e0 Gatling gun 0 298 365 349 2025-04-15T16:10:17Z Tokepoke 586382 fix link wikitext text/x-wiki {{Weapon infobox |title=Gatling gun |image=gatlinggun.png |Weapon Type=supercharged weapon |Damage=2.5 |Rate of fire=30 shots per second |Damage per second=75 |Power consumption per shot=0.8% |Power consumption per second=24% |Damage from full power=312.5 }} == Function == Activating supercharge while using the [[Machine gun]] creates the Gatling gun, a very fast firing and high damage [[Weapons|weapon]]. == Tips == When using the fire button sparingly and firing with controlled bursts, it is a flexible weapon can take down targets without expending too much power. == Recoil == The Gatling gun has a steady but overpowering recoil: it is impossible to move forward or stay still while firing. Trying to move forward slows down backwards movement slightly. == Combinations == Other supercharged weapons created from the same base [[Machine gun]] are the [[Gatling Railgun]], [[Gatling Fusion gun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Gatling gun is the [[Spread Mod]]. f7a0bce60658f81b2b07687d6f1779ac59a5229a Super Railgun 0 299 366 350 2025-04-15T16:11:49Z Tokepoke 586382 fix damage reduced stat wikitext text/x-wiki {{Weapon infobox |title=Super Railgun |image=superrailgun.png |Weapon Type=supercharged weapon |Damage=55 (68.75 vs medium and large enemies) |Rate of fire=1 shot per second |Damage per second=55 (68.75 vs medium and large enemies) |Power consumption per shot=25% |Power consumption per second=25% |Damage from full power=220 (275 vs medium and large enemies) |Damage reduced per hit=3 |Minimum damage=5 |Overkill modifier=-50% }} == Function == A [[Weapons|weapon]] made by supercharging the base [[Railgun]]. Like the base Railgun, the Super Railgun shoots piercing projectiles. It can take out multiple lined up Haulers (up to 8) in one shot. The projectile's damage is reduced by 5 for each hit, but its damage can't fall below 5: the projectile will continue to damage everything in its path until it leaves the screen. == Tips == Despite the negative Overkill modifier, the Super Railgun can multiply its potential for damage even more by shooting through smaller enemies in front of big targets: the shrapnel generated from a couple drones is enough to finish off even a Gunship when added up to the Super Railgun projectile's damage. Shooting through a spinning line formation of 6 drones creates so much shrapnel it can clear out just about everything behind it. == Recoil == The Supercharged Railgun has a strong recoil, shunting the player backwards a considerable distance even when counteracting the recoil by forward movement. == Combinations == Other supercharged weapons created from the same base [[Railgun]] are the [[Gatling Railgun]], [[Fusion Railgun]] and the [[Ultimate Weapon]]. == Mods == The superweapon mod that applies to the Super Railgun is the [[Smart Shot]]. cecde148d8de7f941fb36b0987bbbbae459ded24 Technocide Wiki/pages 0 273 371 329 2025-04-15T16:25:03Z Tokepoke 586382 wikitext text/x-wiki {{Main page box/start | title = Useful wiki pages | class = centered-content }} <div class="mp-links columns-2"> * {{MP link|Weapons}} * {{MP link|Equipment}} * {{MP link|Gameplay Mechanics}} * {{MP link|Technocide}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 330c7a594520173a0686a0caa78d8c6b52ce9981 372 371 2025-04-18T07:28:34Z Tokepoke 586382 wikitext text/x-wiki {{Main page box/start | title = Useful wiki pages | class = centered-content }} <div class="mp-links columns-2"> * {{MP link|Weapons}} * {{MP link|Equipment}} * {{MP link|Gameplay Mechanics}} * {{MP link|Enemies}} </div> {{Main page box/end}}<noinclude>[[Category:Main page boxes]]</noinclude><!-- don't edit this line --> 6d935184c9aa2d8ee0c97a70a20d8f22738671f9 Equipment 0 308 373 2025-04-18T15:35:49Z Tokepoke 586382 List of equipment wikitext text/x-wiki Equipment are extra pieces of hardware that are earned during a playthrough. Equipment can be either bought from a Shop with Reputation Points (RP) or earned from special hard levels. They can be freely assigned to four equipment slots, each having its own activation button. Equipment can have a passive effect, an active effect, or both. Active effects are always restricted either by a long cooldown or by a limited number of activations per level (ammo). Ammo restricted equipment usually also have a short cooldown. == All Equipment == === Shop === Shop equipment can be bought from shops accessed by completing shop levels. Each Episode has one shop level. Equipment can be sold back at the same price before using them. Only after playing a level or exiting the game the bought equipment resale value drops to half of its original price. * [[Battery]], price: 50,000 RP * [[Rocket Booster]], price: 80,000 RP * [[BFR-1000]], price: 150,000 RP * [[Lightning Field]], price: 265,000 RP * [[Shield Generator]], price: 450,000 RP * [[Mini-Missiles]], price: 575,000 RP * [[Cluster Bomber]], price: 750,000 RP * [[Laser Mines]], price: 1,075,000 RP * [[Gun Drone]], price: 1,563,000 RP * [[Seeker Missiles]], price: 2,250,000 RP === Hard Levels === Each Episode has a hard level that rewards an equipment, with the exception of Episode 5: [[Asteroid Field]]. The equipment is randomized from a pair of equipment unique to the Episode. ==== Episode 1: Volturnus ==== Resale value: 75,000 RP * [[Mining Laser]] * [[Mass Driver]] ==== Episode 2: Vulcan ==== Resale value: 85,000 RP * [[Slag Gun]] * [[Heat Wave]] ==== Episode 3: Salus ==== Resale value: 105,000 RP * [[IFF Scrambler]] * [[Data Overload]] ==== Episode 4: Feronia ==== Resale value: 120,000 RP * [[Grabber Vines]] * [[Saw Drones]] ==== Episode 6: Lemures ==== Resale value: 150,000 RP * [[Drill Torpedo]] * [[Implosion Bomb]] === Mad Scientist (Boss) === Defeating the [[Mad Scientist]] at the end of Episode 3 rewards one special equipment. These signify the technological progress A.S.D.I. has made during its rampage and are themed around manipulating physics and space-time. It is not possible to obtain two of the same of these equipment even when keeping one from the last playthrough. These equipment are awarded in a randomized rotation, where each equipment is awarded at least once before any are awarded a second time. None of these equipment can be sold. * [[Black Hole]] * [[Momentum Inverter]] * [[Replicator]] * [[Space Compactor]] * [[Time Dilator]] * [[Wormhole Generator]] c2fac92f008890fc3bc5b546efd9bc7e4791be46 375 373 2025-04-18T15:48:58Z Tokepoke 586382 mention total number of equipment wikitext text/x-wiki Technocide features a total of 26 different Equipment. Equipment are extra pieces of hardware that are earned during a playthrough. Equipment can be either bought from a Shop with Reputation Points (RP) or earned from special hard levels. They can be freely assigned to four equipment slots, each having its own activation button. Equipment can have a passive effect, an active effect, or both. Active effects are always restricted either by a long cooldown or by a limited number of activations per level (ammo). Ammo restricted equipment usually also have a short cooldown. == All Equipment == === Shop === Shop equipment can be bought from shops accessed by completing shop levels. Each Episode has one shop level. Equipment can be sold back at the same price before using them. Only after playing a level or exiting the game the bought equipment resale value drops to half of its original price. * [[Battery]], price: 50,000 RP * [[Rocket Booster]], price: 80,000 RP * [[BFR-1000]], price: 150,000 RP * [[Lightning Field]], price: 265,000 RP * [[Shield Generator]], price: 450,000 RP * [[Mini-Missiles]], price: 575,000 RP * [[Cluster Bomber]], price: 750,000 RP * [[Laser Mines]], price: 1,075,000 RP * [[Gun Drone]], price: 1,563,000 RP * [[Seeker Missiles]], price: 2,250,000 RP === Hard Levels === Each Episode has a hard level that rewards an equipment, with the exception of Episode 5: [[Asteroid Field]]. The equipment is randomized from a pair of equipment unique to the Episode. ==== Episode 1: Volturnus ==== Resale value: 75,000 RP * [[Mining Laser]] * [[Mass Driver]] ==== Episode 2: Vulcan ==== Resale value: 85,000 RP * [[Slag Gun]] * [[Heat Wave]] ==== Episode 3: Salus ==== Resale value: 105,000 RP * [[IFF Scrambler]] * [[Data Overload]] ==== Episode 4: Feronia ==== Resale value: 120,000 RP * [[Grabber Vines]] * [[Saw Drones]] ==== Episode 6: Lemures ==== Resale value: 150,000 RP * [[Drill Torpedo]] * [[Implosion Bomb]] === Mad Scientist (Boss) === Defeating the [[Mad Scientist]] at the end of Episode 3 rewards one special equipment. These signify the technological progress A.S.D.I. has made during its rampage and are themed around manipulating physics and space-time. It is not possible to obtain two of the same of these equipment even when keeping one from the last playthrough. These equipment are awarded in a randomized rotation, where each equipment is awarded at least once before any are awarded a second time. None of these equipment can be sold. * [[Black Hole]] * [[Momentum Inverter]] * [[Replicator]] * [[Space Compactor]] * [[Time Dilator]] * [[Wormhole Generator]] c3dae70cac5397f16505d6427be0b5b8c6d1a047 Enemies 0 309 374 2025-04-18T15:47:40Z Tokepoke 586382 List of enemies wikitext text/x-wiki Technocide has 10 different enemies. Each enemy either tries to get to the bottom of the screen to damage the carrier or does other things to cause problems for the player. A new enemy type is unlocked at the start each Episode, except in the first Episode, where it unlocks after the first level. Some enemies are unlocked as pairs. == Unlock Sequence == The game starts with these enemies unlocked: * [[Drone]] * [[Hauler]] ==== Episode 1: Volturnus, Level 2: ==== * [[Dart]] ==== Episode 2: Vulcan ==== either: * [[Gunship]] or * [[Mine Layer]] + [[Mine]] ==== Episode 3: Salus ==== * [[Brute]] ==== Episode 4 and onwards ==== The rest of the enemies are unlocked in a random order, including the enemy that was not unlocked at Episode 2: * [[Commander]] * [[Virus]] + [[Defence Turret]] cc664a192809e3f0adc66ef2f58d75c811c7d447 Machine gun 0 294 376 341 2025-04-18T15:50:31Z Tokepoke 586382 fix link wikitext text/x-wiki {{Weapon infobox |title=Machine gun |image=machinegun.png |Weapon Type=base weapon |Damage=1 |Rate of fire=15 shots per second |Damage per second=15 }} == Function == A rapid fire [[Weapons|weapon]]. The machine gun shoots alternating from the left and right gun of the Fighter. Easy to use and most effective at taking out multiple separated small targets. == Tips == Whenever a drone swarm does its end-of-wave dive, consider swapping to the Machine gun. == Recoil == The Machine gun has a slight recoil noticeable only when not moving: it slowly and steadily pushes the Fighter backwards. When moving around, the recoil is reduced to unnoticeable levels. == Supercharge == When supercharged, the Machine gun becomes the [[Gatling gun]]. When combined and supercharged with a [[Railgun]], they become the [[Gatling Railgun]], or with the [[Fusion gun]] to become the [[Gatling Fusion gun]]. It is also a component of the [[Ultimate Weapon]]. 3acb63cb485113c20c48922f8bb4e5cbd9f8694e